home *** CD-ROM | disk | FTP | other *** search
Emacs Compiled Lisp | 1998-10-28 | 21.5 KB |
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was processed as: Emacs Compiled Lisp
(other/emacsCompiledLisp).
This format is not currently supported by dexvert.
Confidence | Program | Detection | Match Type | Support
|
---|
1%
| dexvert
| Emacs Compiled Lisp (other/emacsCompiledLisp)
| magic
| Unsupported |
100%
| file
| Emacs/XEmacs v19 byte-compiled Lisp data
| default
| |
99%
| file
| data
| default
| |
100%
| TrID
| Emacs/XEmacs byte-compiled Lisp (generic)
| default
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 3b 45 4c 43 13 00 00 00 | 0a 3b 3b 3b 20 63 6f 6d |;ELC....|.;;; com|
|00000010| 70 69 6c 65 64 20 62 79 | 20 72 6d 73 40 70 73 69 |piled by| rms@psi|
|00000020| 6c 6f 63 69 6e 2e 67 6e | 75 2e 61 69 2e 6d 69 74 |locin.gn|u.ai.mit|
|00000030| 2e 65 64 75 20 6f 6e 20 | 54 68 75 20 41 75 67 20 |.edu on |Thu Aug |
|00000040| 20 31 20 31 38 3a 33 38 | 3a 32 30 20 31 39 39 36 | 1 18:38|:20 1996|
|00000050| 0a 3b 3b 3b 20 66 72 6f | 6d 20 66 69 6c 65 20 2f |.;;; fro|m file /|
|00000060| 68 6f 6d 65 2f 66 73 66 | 2f 72 6d 73 2f 65 31 39 |home/fsf|/rms/e19|
|00000070| 2f 6c 69 73 70 2f 73 68 | 65 6c 6c 2e 65 6c 0a 3b |/lisp/sh|ell.el.;|
|00000080| 3b 3b 20 65 6d 61 63 73 | 20 76 65 72 73 69 6f 6e |;; emacs| version|
|00000090| 20 31 39 2e 33 31 2e 39 | 37 2e 34 2e 0a 3b 3b 3b | 19.31.9|7.4..;;;|
|000000a0| 20 62 79 74 65 63 6f 6d | 70 20 76 65 72 73 69 6f | bytecom|p versio|
|000000b0| 6e 20 46 53 46 20 32 2e | 31 30 0a 3b 3b 3b 20 6f |n FSF 2.|10.;;; o|
|000000c0| 70 74 69 6d 69 7a 61 74 | 69 6f 6e 20 69 73 20 6f |ptimizat|ion is o|
|000000d0| 6e 2e 0a 3b 3b 3b 20 74 | 68 69 73 20 66 69 6c 65 |n..;;; t|his file|
|000000e0| 20 75 73 65 73 20 6f 70 | 63 6f 64 65 73 20 77 68 | uses op|codes wh|
|000000f0| 69 63 68 20 64 6f 20 6e | 6f 74 20 65 78 69 73 74 |ich do n|ot exist|
|00000100| 20 69 6e 20 45 6d 61 63 | 73 20 31 38 2e 0a 0a 28 | in Emac|s 18...(|
|00000110| 69 66 20 28 61 6e 64 20 | 28 62 6f 75 6e 64 70 20 |if (and |(boundp |
|00000120| 27 65 6d 61 63 73 2d 76 | 65 72 73 69 6f 6e 29 0a |'emacs-v|ersion).|
|00000130| 09 20 28 6f 72 20 28 61 | 6e 64 20 28 62 6f 75 6e |. (or (a|nd (boun|
|00000140| 64 70 20 27 65 70 6f 63 | 68 3a 3a 76 65 72 73 69 |dp 'epoc|h::versi|
|00000150| 6f 6e 29 20 65 70 6f 63 | 68 3a 3a 76 65 72 73 69 |on) epoc|h::versi|
|00000160| 6f 6e 29 0a 09 20 20 20 | 20 20 28 73 74 72 69 6e |on).. | (strin|
|00000170| 67 2d 6c 65 73 73 70 20 | 65 6d 61 63 73 2d 76 65 |g-lessp |emacs-ve|
|00000180| 72 73 69 6f 6e 20 22 31 | 39 2e 32 39 22 29 29 29 |rsion "1|9.29")))|
|00000190| 0a 20 20 20 20 28 65 72 | 72 6f 72 20 22 60 73 68 |. (er|ror "`sh|
|000001a0| 65 6c 6c 2e 65 6c 27 20 | 77 61 73 20 63 6f 6d 70 |ell.el' |was comp|
|000001b0| 69 6c 65 64 20 66 6f 72 | 20 45 6d 61 63 73 20 31 |iled for| Emacs 1|
|000001c0| 39 2e 32 39 20 6f 72 20 | 6c 61 74 65 72 22 29 29 |9.29 or |later"))|
|000001d0| 0a 0a 0a 28 72 65 71 75 | 69 72 65 20 28 71 75 6f |...(requ|ire (quo|
|000001e0| 74 65 20 63 6f 6d 69 6e | 74 29 29 0a 23 40 34 32 |te comin|t)).#@42|
|000001f0| 36 20 52 65 67 65 78 70 | 20 74 6f 20 6d 61 74 63 |6 Regexp| to matc|
|00000200| 68 20 70 72 6f 6d 70 74 | 73 20 69 6e 20 74 68 65 |h prompt|s in the|
|00000210| 20 69 6e 66 65 72 69 6f | 72 20 73 68 65 6c 6c 2e | inferio|r shell.|
|00000220| 0a 44 65 66 61 75 6c 74 | 73 20 74 6f 20 22 5e 5b |.Default|s to "^[|
|00000230| 5e 23 24 25 3e 5c 6e 5d | 2a 5b 23 24 25 3e 5d 20 |^#$%>\n]|*[#$%>] |
|00000240| 2a 22 2c 20 77 68 69 63 | 68 20 77 6f 72 6b 73 20 |*", whic|h works |
|00000250| 70 72 65 74 74 79 20 77 | 65 6c 6c 2e 0a 54 68 69 |pretty w|ell..Thi|
|00000260| 73 20 76 61 72 69 61 62 | 6c 65 20 69 73 20 75 73 |s variab|le is us|
|00000270| 65 64 20 74 6f 20 69 6e | 69 74 69 61 6c 69 73 65 |ed to in|itialise|
|00000280| 20 60 63 6f 6d 69 6e 74 | 2d 70 72 6f 6d 70 74 2d | `comint|-prompt-|
|00000290| 72 65 67 65 78 70 27 20 | 69 6e 20 74 68 65 20 0a |regexp' |in the .|
|000002a0| 73 68 65 6c 6c 20 62 75 | 66 66 65 72 2e 0a 0a 54 |shell bu|ffer...T|
|000002b0| 68 65 20 70 61 74 74 65 | 72 6e 20 73 68 6f 75 6c |he patte|rn shoul|
|000002c0| 64 20 70 72 6f 62 61 62 | 6c 79 20 6e 6f 74 20 6d |d probab|ly not m|
|000002d0| 61 74 63 68 20 6d 6f 72 | 65 20 74 68 61 6e 20 6f |atch mor|e than o|
|000002e0| 6e 65 20 6c 69 6e 65 2e | 20 20 49 66 20 69 74 20 |ne line.| If it |
|000002f0| 64 6f 65 73 2c 0a 53 68 | 65 6c 6c 20 6d 6f 64 65 |does,.Sh|ell mode|
|00000300| 20 6d 61 79 20 62 65 63 | 6f 6d 65 20 63 6f 6e 66 | may bec|ome conf|
|00000310| 75 73 65 64 20 74 72 79 | 69 6e 67 20 74 6f 20 64 |used try|ing to d|
|00000320| 69 73 74 69 6e 67 75 69 | 73 68 20 70 72 6f 6d 70 |istingui|sh promp|
|00000330| 74 20 66 72 6f 6d 20 69 | 6e 70 75 74 0a 6f 6e 20 |t from i|nput.on |
|00000340| 6c 69 6e 65 73 20 77 68 | 69 63 68 20 64 6f 6e 27 |lines wh|ich don'|
|00000350| 74 20 73 74 61 72 74 20 | 77 69 74 68 20 61 20 70 |t start |with a p|
|00000360| 72 6f 6d 70 74 2e 0a 0a | 54 68 69 73 20 69 73 20 |rompt...|This is |
|00000370| 61 20 66 69 6e 65 20 74 | 68 69 6e 67 20 74 6f 20 |a fine t|hing to |
|00000380| 73 65 74 20 69 6e 20 79 | 6f 75 72 20 60 2e 65 6d |set in y|our `.em|
|00000390| 61 63 73 27 20 66 69 6c | 65 2e 1f 0a 28 64 65 66 |acs' fil|e...(def|
|000003a0| 76 61 72 20 73 68 65 6c | 6c 2d 70 72 6f 6d 70 74 |var shel|l-prompt|
|000003b0| 2d 70 61 74 74 65 72 6e | 20 22 5e 5b 5e 23 24 25 |-pattern| "^[^#$%|
|000003c0| 3e 5c 6e 5d 2a 5b 23 24 | 25 3e 5d 20 2a 22 20 28 |>\n]*[#$|%>] *" (|
|000003d0| 23 24 20 2e 20 34 39 38 | 29 29 0a 23 40 32 39 35 |#$ . 498|)).#@295|
|000003e0| 20 2a 4c 69 73 74 20 6f | 66 20 73 75 66 66 69 78 | *List o|f suffix|
|000003f0| 65 73 20 74 6f 20 62 65 | 20 64 69 73 72 65 67 61 |es to be| disrega|
|00000400| 72 64 65 64 20 64 75 72 | 69 6e 67 20 66 69 6c 65 |rded dur|ing file|
|00000410| 2f 63 6f 6d 6d 61 6e 64 | 20 63 6f 6d 70 6c 65 74 |/command| complet|
|00000420| 69 6f 6e 2e 0a 54 68 69 | 73 20 76 61 72 69 61 62 |ion..Thi|s variab|
|00000430| 6c 65 20 69 73 20 75 73 | 65 64 20 74 6f 20 69 6e |le is us|ed to in|
|00000440| 69 74 69 61 6c 69 7a 65 | 20 60 63 6f 6d 69 6e 74 |itialize| `comint|
|00000450| 2d 63 6f 6d 70 6c 65 74 | 69 6f 6e 2d 66 69 67 6e |-complet|ion-fign|
|00000460| 6f 72 65 27 20 69 6e 20 | 74 68 65 20 73 68 65 6c |ore' in |the shel|
|00000470| 6c 0a 62 75 66 66 65 72 | 2e 20 20 54 68 65 20 64 |l.buffer|. The d|
|00000480| 65 66 61 75 6c 74 20 69 | 73 20 6e 69 6c 2c 20 66 |efault i|s nil, f|
|00000490| 6f 72 20 63 6f 6d 70 61 | 74 69 62 69 6c 69 74 79 |or compa|tibility|
|000004a0| 20 77 69 74 68 20 6d 6f | 73 74 20 73 68 65 6c 6c | with mo|st shell|
|000004b0| 73 2e 0a 53 6f 6d 65 20 | 70 65 6f 70 6c 65 20 6c |s..Some |people l|
|000004c0| 69 6b 65 20 28 22 7e 22 | 20 22 23 22 20 22 25 22 |ike ("~"| "#" "%"|
|000004d0| 29 2e 0a 0a 54 68 69 73 | 20 69 73 20 61 20 66 69 |)...This| is a fi|
|000004e0| 6e 65 20 74 68 69 6e 67 | 20 74 6f 20 73 65 74 20 |ne thing| to set |
|000004f0| 69 6e 20 79 6f 75 72 20 | 60 2e 65 6d 61 63 73 27 |in your |`.emacs'|
|00000500| 20 66 69 6c 65 2e 1f 0a | 28 64 65 66 76 61 72 20 | file...|(defvar |
|00000510| 73 68 65 6c 6c 2d 63 6f | 6d 70 6c 65 74 69 6f 6e |shell-co|mpletion|
|00000520| 2d 66 69 67 6e 6f 72 65 | 20 6e 69 6c 20 28 23 24 |-fignore| nil (#$|
|00000530| 20 2e 20 2d 39 39 33 29 | 29 0a 23 40 32 35 34 20 | . -993)|).#@254 |
|00000540| 4c 69 73 74 20 6f 66 20 | 63 68 61 72 61 63 74 65 |List of |characte|
|00000550| 72 73 20 74 6f 20 72 65 | 63 6f 67 6e 69 73 65 20 |rs to re|cognise |
|00000560| 61 73 20 73 65 70 61 72 | 61 74 65 20 61 72 67 75 |as separ|ate argu|
|00000570| 6d 65 6e 74 73 2e 0a 54 | 68 69 73 20 76 61 72 69 |ments..T|his vari|
|00000580| 61 62 6c 65 20 69 73 20 | 75 73 65 64 20 74 6f 20 |able is |used to |
|00000590| 69 6e 69 74 69 61 6c 69 | 7a 65 20 60 63 6f 6d 69 |initiali|ze `comi|
|000005a0| 6e 74 2d 64 65 6c 69 6d | 69 74 65 72 2d 61 72 67 |nt-delim|iter-arg|
|000005b0| 75 6d 65 6e 74 2d 6c 69 | 73 74 27 20 69 6e 20 74 |ument-li|st' in t|
|000005c0| 68 65 0a 73 68 65 6c 6c | 20 62 75 66 66 65 72 2e |he.shell| buffer.|
|000005d0| 20 20 54 68 65 20 76 61 | 6c 75 65 20 6d 61 79 20 | The va|lue may |
|000005e0| 64 65 70 65 6e 64 20 6f | 6e 20 74 68 65 20 6f 70 |depend o|n the op|
|000005f0| 65 72 61 74 69 6e 67 20 | 73 79 73 74 65 6d 20 6f |erating |system o|
|00000600| 72 20 73 68 65 6c 6c 2e | 0a 0a 54 68 69 73 20 69 |r shell.|..This i|
|00000610| 73 20 61 20 66 69 6e 65 | 20 74 68 69 6e 67 20 74 |s a fine| thing t|
|00000620| 6f 20 73 65 74 20 69 6e | 20 79 6f 75 72 20 60 2e |o set in| your `.|
|00000630| 65 6d 61 63 73 27 20 66 | 69 6c 65 2e 1f 0a 28 64 |emacs' f|ile...(d|
|00000640| 65 66 76 61 72 20 73 68 | 65 6c 6c 2d 64 65 6c 69 |efvar sh|ell-deli|
|00000650| 6d 69 74 65 72 2d 61 72 | 67 75 6d 65 6e 74 2d 6c |miter-ar|gument-l|
|00000660| 69 73 74 20 28 71 75 6f | 74 65 20 28 31 32 34 20 |ist (quo|te (124 |
|00000670| 33 38 20 36 30 20 36 32 | 20 34 30 20 34 31 20 35 |38 60 62| 40 41 5|
|00000680| 39 29 29 20 28 23 24 20 | 2e 20 31 33 34 34 29 29 |9)) (#$ |. 1344))|
|00000690| 0a 23 40 32 33 34 20 53 | 74 72 69 6e 67 20 6f 66 |.#@234 S|tring of|
|000006a0| 20 63 68 61 72 61 63 74 | 65 72 73 20 76 61 6c 69 | charact|ers vali|
|000006b0| 64 20 69 6e 20 61 20 66 | 69 6c 65 20 6e 61 6d 65 |d in a f|ile name|
|000006c0| 2e 0a 54 68 69 73 20 76 | 61 72 69 61 62 6c 65 20 |..This v|ariable |
|000006d0| 69 73 20 75 73 65 64 20 | 74 6f 20 69 6e 69 74 69 |is used |to initi|
|000006e0| 61 6c 69 7a 65 20 60 63 | 6f 6d 69 6e 74 2d 66 69 |alize `c|omint-fi|
|000006f0| 6c 65 2d 6e 61 6d 65 2d | 63 68 61 72 73 27 20 69 |le-name-|chars' i|
|00000700| 6e 20 74 68 65 0a 73 68 | 65 6c 6c 20 62 75 66 66 |n the.sh|ell buff|
|00000710| 65 72 2e 20 20 54 68 65 | 20 76 61 6c 75 65 20 6d |er. The| value m|
|00000720| 61 79 20 64 65 70 65 6e | 64 20 6f 6e 20 74 68 65 |ay depen|d on the|
|00000730| 20 6f 70 65 72 61 74 69 | 6e 67 20 73 79 73 74 65 | operati|ng syste|
|00000740| 6d 20 6f 72 20 73 68 65 | 6c 6c 2e 0a 0a 54 68 69 |m or she|ll...Thi|
|00000750| 73 20 69 73 20 61 20 66 | 69 6e 65 20 74 68 69 6e |s is a f|ine thin|
|00000760| 67 20 74 6f 20 73 65 74 | 20 69 6e 20 79 6f 75 72 |g to set| in your|
|00000770| 20 60 2e 65 6d 61 63 73 | 27 20 66 69 6c 65 2e 1f | `.emacs|' file..|
|00000780| 0a 28 64 65 66 76 61 72 | 20 73 68 65 6c 6c 2d 66 |.(defvar| shell-f|
|00000790| 69 6c 65 2d 6e 61 6d 65 | 2d 63 68 61 72 73 20 28 |ile-name|-chars (|
|000007a0| 62 79 74 65 2d 63 6f 64 | 65 20 22 08 c1 3e 83 08 |byte-cod|e "..>..|
|000007b0| 00 c2 87 c3 87 22 20 5b | 73 79 73 74 65 6d 2d 74 |....." [|system-t|
|000007c0| 79 70 65 20 28 6d 73 2d | 64 6f 73 20 77 69 6e 64 |ype (ms-|dos wind|
|000007d0| 6f 77 73 2d 6e 74 29 20 | 22 7e 2f 41 2d 5a 61 2d |ows-nt) |"~/A-Za-|
|000007e0| 7a 30 2d 39 5f 5e 24 21 | 23 25 26 7b 7d 40 60 27 |z0-9_^$!|#%&{}@`'|
|000007f0| 2e 28 29 2d 22 20 22 7e | 2f 41 2d 5a 61 2d 7a 30 |.()-" "~|/A-Za-z0|
|00000800| 2d 39 2b 40 3a 5f 2e 24 | 23 25 2c 3d 7b 7d 2d 22 |-9+@:_.$|#%,={}-"|
|00000810| 5d 20 32 29 20 28 23 24 | 20 2e 20 31 36 38 37 29 |] 2) (#$| . 1687)|
|00000820| 29 0a 23 40 32 34 35 20 | 4c 69 73 74 20 6f 66 20 |).#@245 |List of |
|00000830| 63 68 61 72 61 63 74 65 | 72 73 20 74 6f 20 71 75 |characte|rs to qu|
|00000840| 6f 74 65 20 77 68 65 6e | 20 69 6e 20 61 20 66 69 |ote when| in a fi|
|00000850| 6c 65 20 6e 61 6d 65 2e | 0a 54 68 69 73 20 76 61 |le name.|.This va|
|00000860| 72 69 61 62 6c 65 20 69 | 73 20 75 73 65 64 20 74 |riable i|s used t|
|00000870| 6f 20 69 6e 69 74 69 61 | 6c 69 7a 65 20 60 63 6f |o initia|lize `co|
|00000880| 6d 69 6e 74 2d 66 69 6c | 65 2d 6e 61 6d 65 2d 71 |mint-fil|e-name-q|
|00000890| 75 6f 74 65 2d 6c 69 73 | 74 27 20 69 6e 20 74 68 |uote-lis|t' in th|
|000008a0| 65 0a 73 68 65 6c 6c 20 | 62 75 66 66 65 72 2e 20 |e.shell |buffer. |
|000008b0| 20 54 68 65 20 76 61 6c | 75 65 20 6d 61 79 20 64 | The val|ue may d|
|000008c0| 65 70 65 6e 64 20 6f 6e | 20 74 68 65 20 6f 70 65 |epend on| the ope|
|000008d0| 72 61 74 69 6e 67 20 73 | 79 73 74 65 6d 20 6f 72 |rating s|ystem or|
|000008e0| 20 73 68 65 6c 6c 2e 0a | 0a 54 68 69 73 20 69 73 | shell..|.This is|
|000008f0| 20 61 20 66 69 6e 65 20 | 74 68 69 6e 67 20 74 6f | a fine |thing to|
|00000900| 20 73 65 74 20 69 6e 20 | 79 6f 75 72 20 60 2e 65 | set in |your `.e|
|00000910| 6d 61 63 73 27 20 66 69 | 6c 65 2e 1f 0a 28 64 65 |macs' fi|le...(de|
|00000920| 66 76 61 72 20 73 68 65 | 6c 6c 2d 66 69 6c 65 2d |fvar she|ll-file-|
|00000930| 6e 61 6d 65 2d 71 75 6f | 74 65 2d 6c 69 73 74 20 |name-quo|te-list |
|00000940| 28 62 79 74 65 2d 63 6f | 64 65 20 22 08 c1 3e 3f |(byte-co|de "..>?|
|00000950| 85 0b 00 c2 0b c4 5c 22 | 87 22 20 5b 73 79 73 74 |......\"|." [syst|
|00000960| 65 6d 2d 74 79 70 65 20 | 28 6d 73 2d 64 6f 73 20 |em-type |(ms-dos |
|00000970| 77 69 6e 64 6f 77 73 2d | 6e 74 29 20 61 70 70 65 |windows-|nt) appe|
|00000980| 6e 64 20 73 68 65 6c 6c | 2d 64 65 6c 69 6d 69 74 |nd shell|-delimit|
|00000990| 65 72 2d 61 72 67 75 6d | 65 6e 74 2d 6c 69 73 74 |er-argum|ent-list|
|000009a0| 20 28 33 32 20 34 32 20 | 33 33 20 33 34 20 33 39 | (32 42 |33 34 39|
|000009b0| 20 39 36 29 5d 20 33 29 | 20 28 23 24 20 2e 20 32 | 96)] 3)| (#$ . 2|
|000009c0| 30 38 38 29 29 0a 23 40 | 31 39 34 20 4c 69 73 74 |088)).#@|194 List|
|000009d0| 20 6f 66 20 66 75 6e 63 | 74 69 6f 6e 73 20 63 61 | of func|tions ca|
|000009e0| 6c 6c 65 64 20 74 6f 20 | 70 65 72 66 6f 72 6d 20 |lled to |perform |
|000009f0| 63 6f 6d 70 6c 65 74 69 | 6f 6e 2e 0a 54 68 69 73 |completi|on..This|
|00000a00| 20 76 61 72 69 61 62 6c | 65 20 69 73 20 75 73 65 | variabl|e is use|
|00000a10| 64 20 74 6f 20 69 6e 69 | 74 69 61 6c 69 73 65 20 |d to ini|tialise |
|00000a20| 60 63 6f 6d 69 6e 74 2d | 64 79 6e 61 6d 69 63 2d |`comint-|dynamic-|
|00000a30| 63 6f 6d 70 6c 65 74 65 | 2d 66 75 6e 63 74 69 6f |complete|-functio|
|00000a40| 6e 73 27 20 69 6e 20 74 | 68 65 0a 73 68 65 6c 6c |ns' in t|he.shell|
|00000a50| 20 62 75 66 66 65 72 2e | 0a 0a 54 68 69 73 20 69 | buffer.|..This i|
|00000a60| 73 20 61 20 66 69 6e 65 | 20 74 68 69 6e 67 20 74 |s a fine| thing t|
|00000a70| 6f 20 73 65 74 20 69 6e | 20 79 6f 75 72 20 60 2e |o set in| your `.|
|00000a80| 65 6d 61 63 73 27 20 66 | 69 6c 65 2e 1f 0a 28 64 |emacs' f|ile...(d|
|00000a90| 65 66 76 61 72 20 73 68 | 65 6c 6c 2d 64 79 6e 61 |efvar sh|ell-dyna|
|00000aa0| 6d 69 63 2d 63 6f 6d 70 | 6c 65 74 65 2d 66 75 6e |mic-comp|lete-fun|
|00000ab0| 63 74 69 6f 6e 73 20 28 | 71 75 6f 74 65 20 28 63 |ctions (|quote (c|
|00000ac0| 6f 6d 69 6e 74 2d 72 65 | 70 6c 61 63 65 2d 62 79 |omint-re|place-by|
|00000ad0| 2d 65 78 70 61 6e 64 65 | 64 2d 68 69 73 74 6f 72 |-expande|d-histor|
|00000ae0| 79 20 73 68 65 6c 6c 2d | 64 79 6e 61 6d 69 63 2d |y shell-|dynamic-|
|00000af0| 63 6f 6d 70 6c 65 74 65 | 2d 65 6e 76 69 72 6f 6e |complete|-environ|
|00000b00| 6d 65 6e 74 2d 76 61 72 | 69 61 62 6c 65 20 73 68 |ment-var|iable sh|
|00000b10| 65 6c 6c 2d 64 79 6e 61 | 6d 69 63 2d 63 6f 6d 70 |ell-dyna|mic-comp|
|00000b20| 6c 65 74 65 2d 63 6f 6d | 6d 61 6e 64 20 73 68 65 |lete-com|mand she|
|00000b30| 6c 6c 2d 72 65 70 6c 61 | 63 65 2d 62 79 2d 65 78 |ll-repla|ce-by-ex|
|00000b40| 70 61 6e 64 65 64 2d 64 | 69 72 65 63 74 6f 72 79 |panded-d|irectory|
|00000b50| 20 63 6f 6d 69 6e 74 2d | 64 79 6e 61 6d 69 63 2d | comint-|dynamic-|
|00000b60| 63 6f 6d 70 6c 65 74 65 | 2d 66 69 6c 65 6e 61 6d |complete|-filenam|
|00000b70| 65 29 29 20 28 23 24 20 | 2e 20 32 35 30 38 29 29 |e)) (#$ |. 2508))|
|00000b80| 0a 23 40 31 32 31 20 2a | 52 65 67 65 78 70 20 74 |.#@121 *|Regexp t|
|00000b90| 6f 20 6d 61 74 63 68 20 | 61 20 73 69 6e 67 6c 65 |o match |a single|
|00000ba0| 20 63 6f 6d 6d 61 6e 64 | 20 77 69 74 68 69 6e 20 | command| within |
|00000bb0| 61 20 70 69 70 65 6c 69 | 6e 65 2e 0a 54 68 69 73 |a pipeli|ne..This|
|00000bc0| 20 69 73 20 75 73 65 64 | 20 66 6f 72 20 64 69 72 | is used| for dir|
|00000bd0| 65 63 74 6f 72 79 20 74 | 72 61 63 6b 69 6e 67 20 |ectory t|racking |
|00000be0| 61 6e 64 20 64 6f 65 73 | 20 6e 6f 74 20 64 6f 20 |and does| not do |
|00000bf0| 61 20 70 65 72 66 65 63 | 74 20 6a 6f 62 2e 1f 0a |a perfec|t job...|
|00000c00| 28 64 65 66 76 61 72 20 | 73 68 65 6c 6c 2d 63 6f |(defvar |shell-co|
|00000c10| 6d 6d 61 6e 64 2d 72 65 | 67 65 78 70 20 22 5b 5e |mmand-re|gexp "[^|
|00000c20| 3b 26 7c 5c 6e 5d 2b 22 | 20 28 23 24 20 2e 20 2d |;&|\n]+"| (#$ . -|
|00000c30| 32 39 35 31 29 29 0a 23 | 40 31 38 37 20 2a 49 66 |2951)).#|@187 *If|
|00000c40| 20 6e 6f 6e 2d 6e 69 6c | 2c 20 75 73 65 20 65 78 | non-nil|, use ex|
|00000c50| 65 63 75 74 61 62 6c 65 | 20 66 69 6c 65 73 20 6f |ecutable| files o|
|00000c60| 6e 6c 79 20 66 6f 72 20 | 63 6f 6d 70 6c 65 74 69 |nly for |completi|
|00000c70| 6f 6e 20 63 61 6e 64 69 | 64 61 74 65 73 2e 0a 54 |on candi|dates..T|
|00000c80| 68 69 73 20 6d 69 72 72 | 6f 72 73 20 74 68 65 20 |his mirr|ors the |
|00000c90| 6f 70 74 69 6f 6e 61 6c | 20 62 65 68 61 76 69 6f |optional| behavio|
|00000ca0| 72 20 6f 66 20 74 63 73 | 68 2e 0a 0a 44 65 74 65 |r of tcs|h...Dete|
|00000cb0| 63 74 69 6e 67 20 65 78 | 65 63 75 74 61 62 69 6c |cting ex|ecutabil|
|00000cc0| 69 74 79 20 6f 66 20 66 | 69 6c 65 73 20 6d 61 79 |ity of f|iles may|
|00000cd0| 20 73 6c 6f 77 20 63 6f | 6d 6d 61 6e 64 20 63 6f | slow co|mmand co|
|00000ce0| 6d 70 6c 65 74 69 6f 6e | 20 63 6f 6e 73 69 64 65 |mpletion| conside|
|00000cf0| 72 61 62 6c 79 2e 1f 0a | 28 64 65 66 76 61 72 20 |rably...|(defvar |
|00000d00| 73 68 65 6c 6c 2d 63 6f | 6d 70 6c 65 74 69 6f 6e |shell-co|mpletion|
|00000d10| 2d 65 78 65 63 6f 6e 6c | 79 20 74 20 28 23 24 20 |-execonl|y t (#$ |
|00000d20| 2e 20 2d 33 31 33 33 29 | 29 0a 23 40 35 36 20 2a |. -3133)|).#@56 *|
|00000d30| 52 65 67 65 78 70 20 74 | 6f 20 6d 61 74 63 68 20 |Regexp t|o match |
|00000d40| 73 75 62 73 68 65 6c 6c | 20 63 6f 6d 6d 61 6e 64 |subshell| command|
|00000d50| 73 20 65 71 75 69 76 61 | 6c 65 6e 74 20 74 6f 20 |s equiva|lent to |
|00000d60| 70 6f 70 64 2e 1f 0a 28 | 64 65 66 76 61 72 20 73 |popd...(|defvar s|
|00000d70| 68 65 6c 6c 2d 70 6f 70 | 64 2d 72 65 67 65 78 70 |hell-pop|d-regexp|
|00000d80| 20 22 70 6f 70 64 22 20 | 28 23 24 20 2e 20 2d 33 | "popd" |(#$ . -3|
|00000d90| 33 37 35 29 29 0a 23 40 | 35 37 20 2a 52 65 67 65 |375)).#@|57 *Rege|
|00000da0| 78 70 20 74 6f 20 6d 61 | 74 63 68 20 73 75 62 73 |xp to ma|tch subs|
|00000db0| 68 65 6c 6c 20 63 6f 6d | 6d 61 6e 64 73 20 65 71 |hell com|mands eq|
|00000dc0| 75 69 76 61 6c 65 6e 74 | 20 74 6f 20 70 75 73 68 |uivalent| to push|
|00000dd0| 64 2e 1f 0a 28 64 65 66 | 76 61 72 20 73 68 65 6c |d...(def|var shel|
|00000de0| 6c 2d 70 75 73 68 64 2d | 72 65 67 65 78 70 20 22 |l-pushd-|regexp "|
|00000df0| 70 75 73 68 64 22 20 28 | 23 24 20 2e 20 2d 33 34 |pushd" (|#$ . -34|
|00000e00| 38 33 29 29 0a 23 40 31 | 31 32 20 2a 49 66 20 6e |83)).#@1|12 *If n|
|00000e10| 6f 6e 2d 6e 69 6c 2c 20 | 6d 61 6b 65 20 70 75 73 |on-nil, |make pus|
|00000e20| 68 64 20 77 69 74 68 20 | 6e 6f 20 61 72 67 20 62 |hd with |no arg b|
|00000e30| 65 68 61 76 65 20 61 73 | 20 22 70 75 73 68 64 20 |ehave as| "pushd |
|00000e40| 7e 22 20 28 6c 69 6b 65 | 20 63 64 29 2e 0a 54 68 |~" (like| cd)..Th|
|00000e50| 69 73 20 6d 69 72 72 6f | 72 73 20 74 68 65 20 6f |is mirro|rs the o|
|00000e60| 70 74 69 6f 6e 61 6c 20 | 62 65 68 61 76 69 6f 72 |ptional |behavior|
|00000e70| 20 6f 66 20 74 63 73 68 | 2e 1f 0a 28 64 65 66 76 | of tcsh|...(defv|
|00000e80| 61 72 20 73 68 65 6c 6c | 2d 70 75 73 68 64 2d 74 |ar shell|-pushd-t|
|00000e90| 6f 68 6f 6d 65 20 6e 69 | 6c 20 28 23 24 20 2e 20 |ohome ni|l (#$ . |
|00000ea0| 2d 33 35 39 35 29 29 0a | 23 40 31 30 38 20 2a 49 |-3595)).|#@108 *I|
|00000eb0| 66 20 6e 6f 6e 2d 6e 69 | 6c 2c 20 6d 61 6b 65 20 |f non-ni|l, make |
|00000ec0| 22 70 75 73 68 64 20 2b | 6e 22 20 70 6f 70 20 74 |"pushd +|n" pop t|
|00000ed0| 68 65 20 6e 74 68 20 64 | 69 72 20 74 6f 20 74 68 |he nth d|ir to th|
|00000ee0| 65 20 73 74 61 63 6b 20 | 74 6f 70 2e 0a 54 68 69 |e stack |top..Thi|
|00000ef0| 73 20 6d 69 72 72 6f 72 | 73 20 74 68 65 20 6f 70 |s mirror|s the op|
|00000f00| 74 69 6f 6e 61 6c 20 62 | 65 68 61 76 69 6f 72 20 |tional b|ehavior |
|00000f10| 6f 66 20 74 63 73 68 2e | 1f 0a 28 64 65 66 76 61 |of tcsh.|..(defva|
|00000f20| 72 20 73 68 65 6c 6c 2d | 70 75 73 68 64 2d 64 65 |r shell-|pushd-de|
|00000f30| 78 74 72 61 63 74 20 6e | 69 6c 20 28 23 24 20 2e |xtract n|il (#$ .|
|00000f40| 20 2d 33 37 35 38 29 29 | 0a 23 40 31 31 31 20 2a | -3758))|.#@111 *|
|00000f50| 49 66 20 6e 6f 6e 2d 6e | 69 6c 2c 20 6d 61 6b 65 |If non-n|il, make|
|00000f60| 20 70 75 73 68 64 20 6f | 6e 6c 79 20 61 64 64 20 | pushd o|nly add |
|00000f70| 75 6e 69 71 75 65 20 64 | 69 72 65 63 74 6f 72 69 |unique d|irectori|
|00000f80| 65 73 20 74 6f 20 74 68 | 65 20 73 74 61 63 6b 2e |es to th|e stack.|
|00000f90| 0a 54 68 69 73 20 6d 69 | 72 72 6f 72 73 20 74 68 |.This mi|rrors th|
|00000fa0| 65 20 6f 70 74 69 6f 6e | 61 6c 20 62 65 68 61 76 |e option|al behav|
|00000fb0| 69 6f 72 20 6f 66 20 74 | 63 73 68 2e 1f 0a 28 64 |ior of t|csh...(d|
|00000fc0| 65 66 76 61 72 20 73 68 | 65 6c 6c 2d 70 75 73 68 |efvar sh|ell-push|
|00000fd0| 64 2d 64 75 6e 69 71 75 | 65 20 6e 69 6c 20 28 23 |d-duniqu|e nil (#|
|00000fe0| 24 20 2e 20 2d 33 39 31 | 39 29 29 0a 23 40 35 34 |$ . -391|9)).#@54|
|00000ff0| 20 2a 52 65 67 65 78 70 | 20 74 6f 20 6d 61 74 63 | *Regexp| to matc|
|00001000| 68 20 73 75 62 73 68 65 | 6c 6c 20 63 6f 6d 6d 61 |h subshe|ll comma|
|00001010| 6e 64 73 20 65 71 75 69 | 76 61 6c 65 6e 74 20 74 |nds equi|valent t|
|00001020| 6f 20 63 64 2e 1f 0a 28 | 64 65 66 76 61 72 20 73 |o cd...(|defvar s|
|00001030| 68 65 6c 6c 2d 63 64 2d | 72 65 67 65 78 70 20 22 |hell-cd-|regexp "|
|00001040| 63 64 22 20 28 23 24 20 | 2e 20 2d 34 30 38 31 29 |cd" (#$ |. -4081)|
|00001050| 29 0a 23 40 35 33 20 2a | 49 66 20 6e 6f 6e 2d 6e |).#@53 *|If non-n|
|00001060| 69 6c 2c 20 69 73 20 72 | 65 67 65 78 70 20 75 73 |il, is r|egexp us|
|00001070| 65 64 20 74 6f 20 74 72 | 61 63 6b 20 64 72 69 76 |ed to tr|ack driv|
|00001080| 65 20 63 68 61 6e 67 65 | 73 2e 1f 0a 28 64 65 66 |e change|s...(def|
|00001090| 76 61 72 20 73 68 65 6c | 6c 2d 63 68 64 72 69 76 |var shel|l-chdriv|
|000010a0| 65 2d 72 65 67 65 78 70 | 20 28 62 79 74 65 2d 63 |e-regexp| (byte-c|
|000010b0| 6f 64 65 20 22 08 c1 3e | 85 07 00 c2 87 22 20 5b |ode "..>|....." [|
|000010c0| 73 79 73 74 65 6d 2d 74 | 79 70 65 20 28 6d 73 2d |system-t|ype (ms-|
|000010d0| 64 6f 73 20 77 69 6e 64 | 6f 77 73 2d 6e 74 29 20 |dos wind|ows-nt) |
|000010e0| 22 5b 5d 61 2d 7a 41 2d | 5a 5e 5f 60 5c 5c 5b 5c |"[]a-zA-|Z^_`\\[\|
|000010f0| 5c 5c 5c 5d 3a 22 5d 20 | 32 29 20 28 23 24 20 2e |\\\]:"] |2) (#$ .|
|00001100| 20 2d 34 31 38 33 29 29 | 0a 23 40 37 35 20 2a 49 | -4183))|.#@75 *I|
|00001110| 66 20 6e 6f 6e 2d 6e 69 | 6c 2c 20 69 73 20 66 69 |f non-ni|l, is fi|
|00001120| 6c 65 20 6e 61 6d 65 20 | 74 6f 20 75 73 65 20 66 |le name |to use f|
|00001130| 6f 72 20 65 78 70 6c 69 | 63 69 74 6c 79 20 72 65 |or expli|citly re|
|00001140| 71 75 65 73 74 65 64 20 | 69 6e 66 65 72 69 6f 72 |quested |inferior|
|00001150| 20 73 68 65 6c 6c 2e 1f | 0a 28 64 65 66 76 61 72 | shell..|.(defvar|
|00001160| 20 65 78 70 6c 69 63 69 | 74 2d 73 68 65 6c 6c 2d | explici|t-shell-|
|00001170| 66 69 6c 65 2d 6e 61 6d | 65 20 6e 69 6c 20 28 23 |file-nam|e nil (#|
|00001180| 24 20 2e 20 2d 34 33 36 | 36 29 29 0a 23 40 31 31 |$ . -436|6)).#@11|
|00001190| 33 20 2a 41 72 67 73 20 | 70 61 73 73 65 64 20 74 |3 *Args |passed t|
|000011a0| 6f 20 69 6e 66 65 72 69 | 6f 72 20 73 68 65 6c 6c |o inferi|or shell|
|000011b0| 20 62 79 20 4d 2d 78 20 | 73 68 65 6c 6c 2c 20 69 | by M-x |shell, i|
|000011c0| 66 20 74 68 65 20 73 68 | 65 6c 6c 20 69 73 20 63 |f the sh|ell is c|
|000011d0| 73 68 2e 0a 56 61 6c 75 | 65 20 69 73 20 61 20 6c |sh..Valu|e is a l|
|000011e0| 69 73 74 20 6f 66 20 73 | 74 72 69 6e 67 73 2c 20 |ist of s|trings, |
|000011f0| 77 68 69 63 68 20 6d 61 | 79 20 62 65 20 6e 69 6c |which ma|y be nil|
|00001200| 2e 1f 0a 28 64 65 66 76 | 61 72 20 65 78 70 6c 69 |...(defv|ar expli|
|00001210| 63 69 74 2d 63 73 68 2d | 61 72 67 73 20 28 62 79 |cit-csh-|args (by|
|00001220| 74 65 2d 63 6f 64 65 20 | 22 08 c1 3d 83 08 00 c2 |te-code |"..=....|
|00001230| 87 c3 87 22 20 5b 73 79 | 73 74 65 6d 2d 74 79 70 |..." [sy|stem-typ|
|00001240| 65 20 68 70 75 78 20 28 | 22 2d 69 22 20 22 2d 54 |e hpux (|"-i" "-T|
|00001250| 22 29 20 28 22 2d 69 22 | 29 5d 20 32 29 20 28 23 |") ("-i"|)] 2) (#|
|00001260| 24 20 2e 20 2d 34 34 39 | 38 29 29 0a 23 40 34 35 |$ . -449|8)).#@45|
|00001270| 32 20 2a 49 66 20 6e 6f | 6e 2d 6e 69 6c 2c 20 65 |2 *If no|n-nil, e|
|00001280| 78 70 61 6e 64 20 69 6e | 70 75 74 20 63 6f 6d 6d |xpand in|put comm|
|00001290| 61 6e 64 20 68 69 73 74 | 6f 72 79 20 72 65 66 65 |and hist|ory refe|
|000012a0| 72 65 6e 63 65 73 20 6f | 6e 20 63 6f 6d 70 6c 65 |rences o|n comple|
|000012b0| 74 69 6f 6e 2e 0a 54 68 | 69 73 20 6d 69 72 72 6f |tion..Th|is mirro|
|000012c0| 72 73 20 74 68 65 20 6f | 70 74 69 6f 6e 61 6c 20 |rs the o|ptional |
|000012d0| 62 65 68 61 76 69 6f 72 | 20 6f 66 20 74 63 73 68 |behavior| of tcsh|
|000012e0| 20 28 69 74 73 20 61 75 | 74 6f 65 78 70 61 6e 64 | (its au|toexpand|
|000012f0| 20 61 6e 64 20 68 69 73 | 74 6c 69 74 29 2e 0a 0a | and his|tlit)...|
|00001300| 49 66 20 74 68 65 20 76 | 61 6c 75 65 20 69 73 20 |If the v|alue is |
|00001310| 60 69 6e 70 75 74 27 2c | 20 74 68 65 6e 20 74 68 |`input',| then th|
|00001320| 65 20 65 78 70 61 6e 73 | 69 6f 6e 20 69 73 20 73 |e expans|ion is s|
|00001330| 65 65 6e 20 6f 6e 20 69 | 6e 70 75 74 2e 0a 49 66 |een on i|nput..If|
|00001340| 20 74 68 65 20 76 61 6c | 75 65 20 69 73 20 60 68 | the val|ue is `h|
|00001350| 69 73 74 6f 72 79 27 2c | 20 74 68 65 6e 20 74 68 |istory',| then th|
|00001360| 65 20 65 78 70 61 6e 73 | 69 6f 6e 20 69 73 20 6f |e expans|ion is o|
|00001370| 6e 6c 79 20 77 68 65 6e | 20 69 6e 73 65 72 74 69 |nly when| inserti|
|00001380| 6e 67 0a 69 6e 74 6f 20 | 74 68 65 20 62 75 66 66 |ng.into |the buff|
|00001390| 65 72 27 73 20 69 6e 70 | 75 74 20 72 69 6e 67 2e |er's inp|ut ring.|
|000013a0| 20 20 53 65 65 20 61 6c | 73 6f 20 60 63 6f 6d 69 | See al|so `comi|
|000013b0| 6e 74 2d 6d 61 67 69 63 | 2d 73 70 61 63 65 27 20 |nt-magic|-space' |
|000013c0| 61 6e 64 0a 60 63 6f 6d | 69 6e 74 2d 64 79 6e 61 |and.`com|int-dyna|
|000013d0| 6d 69 63 2d 63 6f 6d 70 | 6c 65 74 65 27 2e 0a 0a |mic-comp|lete'...|
|000013e0| 54 68 69 73 20 76 61 72 | 69 61 62 6c 65 20 73 75 |This var|iable su|
|000013f0| 70 70 6c 69 65 73 20 61 | 20 64 65 66 61 75 6c 74 |pplies a| default|
|00001400| 20 66 6f 72 20 60 63 6f | 6d 69 6e 74 2d 69 6e 70 | for `co|mint-inp|
|00001410| 75 74 2d 61 75 74 6f 65 | 78 70 61 6e 64 27 2c 0a |ut-autoe|xpand',.|
|00001420| 66 6f 72 20 53 68 65 6c | 6c 20 6d 6f 64 65 20 6f |for Shel|l mode o|
|00001430| 6e 6c 79 2e 1f 0a 28 64 | 65 66 76 61 72 20 73 68 |nly...(d|efvar sh|
|00001440| 65 6c 6c 2d 69 6e 70 75 | 74 2d 61 75 74 6f 65 78 |ell-inpu|t-autoex|
|00001450| 70 61 6e 64 20 28 71 75 | 6f 74 65 20 68 69 73 74 |pand (qu|ote hist|
|00001460| 6f 72 79 29 20 28 23 24 | 20 2e 20 2d 34 37 32 32 |ory) (#$| . -4722|
|00001470| 29 29 0a 23 40 31 31 39 | 20 4c 69 73 74 20 6f 66 |)).#@119| List of|
|00001480| 20 64 69 72 65 63 74 6f | 72 69 65 73 20 73 61 76 | directo|ries sav|
|00001490| 65 64 20 62 79 20 70 75 | 73 68 64 20 69 6e 20 74 |ed by pu|shd in t|
|000014a0| 68 69 73 20 62 75 66 66 | 65 72 27 73 20 73 68 65 |his buff|er's she|
|000014b0| 6c 6c 2e 0a 54 68 75 73 | 2c 20 74 68 69 73 20 64 |ll..Thus|, this d|
|000014c0| 6f 65 73 20 6e 6f 74 20 | 69 6e 63 6c 75 64 65 20 |oes not |include |
|000014d0| 74 68 65 20 73 68 65 6c | 6c 27 73 20 63 75 72 72 |the shel|l's curr|
|000014e0| 65 6e 74 20 64 69 72 65 | 63 74 6f 72 79 2e 1f 0a |ent dire|ctory...|
|000014f0| 28 64 65 66 76 61 72 20 | 73 68 65 6c 6c 2d 64 69 |(defvar |shell-di|
|00001500| 72 73 74 61 63 6b 20 6e | 69 6c 20 28 23 24 20 2e |rstack n|il (#$ .|
|00001510| 20 35 32 34 31 29 29 0a | 23 40 36 34 20 4e 6f 6e | 5241)).|#@64 Non|
|00001520| 2d 6e 69 6c 20 69 6e 20 | 61 20 73 68 65 6c 6c 20 |-nil in |a shell |
|00001530| 62 75 66 66 65 72 20 6d | 65 61 6e 73 20 64 69 72 |buffer m|eans dir|
|00001540| 65 63 74 6f 72 79 20 74 | 72 61 63 6b 69 6e 67 20 |ectory t|racking |
|00001550| 69 73 20 65 6e 61 62 6c | 65 64 2e 1f 0a 28 64 65 |is enabl|ed...(de|
|00001560| 66 76 61 72 20 73 68 65 | 6c 6c 2d 64 69 72 74 72 |fvar she|ll-dirtr|
|00001570| 61 63 6b 70 20 74 20 28 | 23 24 20 2e 20 35 34 30 |ackp t (|#$ . 540|
|00001580| 35 29 29 0a 23 40 35 34 | 20 4b 65 65 70 20 74 72 |5)).#@54| Keep tr|
|00001590| 61 63 6b 20 6f 66 20 6c | 61 73 74 20 64 69 72 65 |ack of l|ast dire|
|000015a0| 63 74 6f 72 79 20 66 6f | 72 20 6b 73 68 20 60 63 |ctory fo|r ksh `c|
|000015b0| 64 20 2d 27 20 63 6f 6d | 6d 61 6e 64 2e 1f 0a 28 |d -' com|mand...(|
|000015c0| 64 65 66 76 61 72 20 73 | 68 65 6c 6c 2d 6c 61 73 |defvar s|hell-las|
|000015d0| 74 2d 64 69 72 20 6e 69 | 6c 20 28 23 24 20 2e 20 |t-dir ni|l (#$ . |
|000015e0| 35 35 31 33 29 29 0a 23 | 40 35 36 20 43 6f 6d 6d |5513)).#|@56 Comm|
|000015f0| 61 6e 64 20 75 73 65 64 | 20 62 79 20 60 73 68 65 |and used| by `she|
|00001600| 6c 6c 2d 72 65 73 79 6e | 63 2d 64 69 72 27 20 74 |ll-resyn|c-dir' t|
|00001610| 6f 20 71 75 65 72 79 20 | 74 68 65 20 73 68 65 6c |o query |the shel|
|00001620| 6c 2e 1f 0a 28 64 65 66 | 76 61 72 20 73 68 65 6c |l...(def|var shel|
|00001630| 6c 2d 64 69 72 73 74 61 | 63 6b 2d 71 75 65 72 79 |l-dirsta|ck-query|
|00001640| 20 6e 69 6c 20 28 23 24 | 20 2e 20 35 36 31 32 29 | nil (#$| . 5612)|
|00001650| 29 0a 28 62 79 74 65 2d | 63 6f 64 65 20 22 c0 c1 |).(byte-|code "..|
|00001660| 21 84 08 00 c2 11 c1 0b | 42 13 09 84 4c 00 c4 20 |!.......|B...L.. |
|00001670| 0d a4 11 c6 09 c7 c8 23 | 88 c6 09 c9 ca 23 88 c6 |.......#|.....#..|
|00001680| 09 cb cc 23 88 c6 09 cd | ce 23 88 c6 09 cf d0 d1 |...#....|.#......|
|00001690| 0d d2 5c 22 21 23 88 d3 | d1 09 d4 5c 22 d5 d6 d7 |..\"!#..|...\"...|
|000016a0| 24 88 d3 d1 09 d8 5c 22 | d9 da db 24 88 c2 87 22 |$.....\"|...$..."|
|000016b0| 20 5b 62 6f 75 6e 64 70 | 20 73 68 65 6c 6c 2d 6d | [boundp| shell-m|
|000016c0| 6f 64 65 2d 6d 61 70 20 | 6e 69 6c 20 63 75 72 72 |ode-map |nil curr|
|000016d0| 65 6e 74 2d 6c 6f 61 64 | 2d 6c 69 73 74 20 6d 61 |ent-load|-list ma|
|000016e0| 6b 65 2d 73 70 61 72 73 | 65 2d 6b 65 79 6d 61 70 |ke-spars|e-keymap|
|000016f0| 20 63 6f 6d 69 6e 74 2d | 6d 6f 64 65 2d 6d 61 70 | comint-|mode-map|
|00001700| 20 64 65 66 69 6e 65 2d | 6b 65 79 20 22 03 06 22 | define-|key ".."|
|00001710| 20 73 68 65 6c 6c 2d 66 | 6f 72 77 61 72 64 2d 63 | shell-f|orward-c|
|00001720| 6f 6d 6d 61 6e 64 20 22 | 03 02 22 20 73 68 65 6c |ommand "|.." shel|
|00001730| 6c 2d 62 61 63 6b 77 61 | 72 64 2d 63 6f 6d 6d 61 |l-backwa|rd-comma|
|00001740| 6e 64 20 22 09 22 20 63 | 6f 6d 69 6e 74 2d 64 79 |nd "." c|omint-dy|
|00001750| 6e 61 6d 69 63 2d 63 6f | 6d 70 6c 65 74 65 20 22 |namic-co|mplete "|
|00001760| bf 22 20 63 6f 6d 69 6e | 74 2d 64 79 6e 61 6d 69 |." comin|t-dynami|
|00001770| 63 2d 6c 69 73 74 2d 66 | 69 6c 65 6e 61 6d 65 2d |c-list-f|ilename-|
|00001780| 63 6f 6d 70 6c 65 74 69 | 6f 6e 73 20 5b 6d 65 6e |completi|ons [men|
|00001790| 75 2d 62 61 72 20 63 6f | 6d 70 6c 65 74 69 6f 6e |u-bar co|mpletion|
|000017a0| 5d 20 63 6f 70 79 2d 6b | 65 79 6d 61 70 20 6c 6f |] copy-k|eymap lo|
|000017b0| 6f 6b 75 70 2d 6b 65 79 | 20 5b 6d 65 6e 75 2d 62 |okup-key| [menu-b|
|000017c0| 61 72 20 63 6f 6d 70 6c | 65 74 69 6f 6e 5d 20 64 |ar compl|etion] d|
|000017d0| 65 66 69 6e 65 2d 6b 65 | 79 2d 61 66 74 65 72 20 |efine-ke|y-after |
|000017e0| 5b 6d 65 6e 75 2d 62 61 | 72 20 63 6f 6d 70 6c 65 |[menu-ba|r comple|
|000017f0| 74 69 6f 6e 5d 20 5b 63 | 6f 6d 70 6c 65 74 65 2d |tion] [c|omplete-|
|00001800| 65 6e 76 2d 76 61 72 69 | 61 62 6c 65 5d 20 28 22 |env-vari|able] ("|
|00001810| 43 6f 6d 70 6c 65 74 65 | 20 45 6e 76 2e 20 56 61 |Complete| Env. Va|
|00001820| 72 69 61 62 6c 65 20 4e | 61 6d 65 22 20 2e 20 73 |riable N|ame" . s|
|00001830| 68 65 6c 6c 2d 64 79 6e | 61 6d 69 63 2d 63 6f 6d |hell-dyn|amic-com|
|00001840| 70 6c 65 74 65 2d 65 6e | 76 69 72 6f 6e 6d 65 6e |plete-en|vironmen|
|00001850| 74 2d 76 61 72 69 61 62 | 6c 65 29 20 63 6f 6d 70 |t-variab|le) comp|
|00001860| 6c 65 74 65 2d 66 69 6c | 65 20 5b 6d 65 6e 75 2d |lete-fil|e [menu-|
|00001870| 62 61 72 20 63 6f 6d 70 | 6c 65 74 69 6f 6e 5d 20 |bar comp|letion] |
|00001880| 5b 65 78 70 61 6e 64 2d | 64 69 72 65 63 74 6f 72 |[expand-|director|
|00001890| 79 5d 20 28 22 45 78 70 | 61 6e 64 20 44 69 72 65 |y] ("Exp|and Dire|
|000018a0| 63 74 6f 72 79 20 52 65 | 66 65 72 65 6e 63 65 22 |ctory Re|ference"|
|000018b0| 20 2e 20 73 68 65 6c 6c | 2d 72 65 70 6c 61 63 65 | . shell|-replace|
|000018c0| 2d 62 79 2d 65 78 70 61 | 6e 64 65 64 2d 64 69 72 |-by-expa|nded-dir|
|000018d0| 65 63 74 6f 72 79 29 20 | 63 6f 6d 70 6c 65 74 65 |ectory) |complete|
|000018e0| 2d 65 78 70 61 6e 64 5d | 20 37 29 0a 23 40 33 35 |-expand]| 7).#@35|
|000018f0| 20 2a 48 6f 6f 6b 20 66 | 6f 72 20 63 75 73 74 6f | *Hook f|or custo|
|00001900| 6d 69 73 69 6e 67 20 53 | 68 65 6c 6c 20 6d 6f 64 |mising S|hell mod|
|00001910| 65 2e 1f 0a 28 64 65 66 | 76 61 72 20 73 68 65 6c |e...(def|var shel|
|00001920| 6c 2d 6d 6f 64 65 2d 68 | 6f 6f 6b 20 6e 69 6c 20 |l-mode-h|ook nil |
|00001930| 28 23 24 20 2e 20 2d 36 | 33 38 35 29 29 0a 23 40 |(#$ . -6|385)).#@|
|00001940| 35 32 20 41 64 64 69 74 | 69 6f 6e 61 6c 20 65 78 |52 Addit|ional ex|
|00001950| 70 72 65 73 73 69 6f 6e | 73 20 74 6f 20 68 69 67 |pression|s to hig|
|00001960| 68 6c 69 67 68 74 20 69 | 6e 20 53 68 65 6c 6c 20 |hlight i|n Shell |
|00001970| 6d 6f 64 65 2e 1f 0a 28 | 64 65 66 76 61 72 20 73 |mode...(|defvar s|
|00001980| 68 65 6c 6c 2d 66 6f 6e | 74 2d 6c 6f 63 6b 2d 6b |hell-fon|t-lock-k|
|00001990| 65 79 77 6f 72 64 73 20 | 28 62 79 74 65 2d 63 6f |eywords |(byte-co|
|000019a0| 64 65 20 22 08 c1 42 c2 | c3 c4 46 87 22 20 5b 73 |de "..B.|..F." [s|
|000019b0| 68 65 6c 6c 2d 70 72 6f | 6d 70 74 2d 70 61 74 74 |hell-pro|mpt-patt|
|000019c0| 65 72 6e 20 66 6f 6e 74 | 2d 6c 6f 63 6b 2d 6b 65 |ern font|-lock-ke|
|000019d0| 79 77 6f 72 64 2d 66 61 | 63 65 20 28 22 5b 20 09 |yword-fa|ce ("[ .|
|000019e0| 5d 5c 5c 28 5b 2b 2d 5d | 5b 5e 20 09 5c 6e 5d 2b |]\\([+-]|[^ .\n]+|
|000019f0| 5c 5c 29 22 20 31 20 66 | 6f 6e 74 2d 6c 6f 63 6b |\\)" 1 f|ont-lock|
|00001a00| 2d 63 6f 6d 6d 65 6e 74 | 2d 66 61 63 65 29 20 28 |-comment|-face) (|
|00001a10| 22 5e 5b 5e 20 09 5c 6e | 5d 2b 3a 2e 2a 22 20 2e |"^[^ .\n|]+:.*" .|
|00001a20| 20 66 6f 6e 74 2d 6c 6f | 63 6b 2d 73 74 72 69 6e | font-lo|ck-strin|
|00001a30| 67 2d 66 61 63 65 29 20 | 28 22 5e 5c 5c 5b 5b 31 |g-face) |("^\\[[1|
|00001a40| 2d 39 5d 5b 30 2d 39 5d | 2a 5c 5c 5d 22 20 2e 20 |-9][0-9]|*\\]" . |
|00001a50| 66 6f 6e 74 2d 6c 6f 63 | 6b 2d 73 74 72 69 6e 67 |font-loc|k-string|
|00001a60| 2d 66 61 63 65 29 5d 20 | 34 29 20 28 23 24 20 2e |-face)] |4) (#$ .|
|00001a70| 20 36 34 36 37 29 29 0a | 23 40 32 37 33 38 20 4d | 6467)).|#@2738 M|
|00001a80| 61 6a 6f 72 20 6d 6f 64 | 65 20 66 6f 72 20 69 6e |ajor mod|e for in|
|00001a90| 74 65 72 61 63 74 69 6e | 67 20 77 69 74 68 20 61 |teractin|g with a|
|00001aa0| 6e 20 69 6e 66 65 72 69 | 6f 72 20 73 68 65 6c 6c |n inferi|or shell|
|00001ab0| 2e 0a 5c 5b 63 6f 6d 69 | 6e 74 2d 73 65 6e 64 2d |..\[comi|nt-send-|
|00001ac0| 69 6e 70 75 74 5d 20 61 | 66 74 65 72 20 74 68 65 |input] a|fter the|
|00001ad0| 20 65 6e 64 20 6f 66 20 | 74 68 65 20 70 72 6f 63 | end of |the proc|
|00001ae0| 65 73 73 27 20 6f 75 74 | 70 75 74 20 73 65 6e 64 |ess' out|put send|
|00001af0| 73 20 74 68 65 20 74 65 | 78 74 20 66 72 6f 6d 0a |s the te|xt from.|
|00001b00| 20 20 20 20 74 68 65 20 | 65 6e 64 20 6f 66 20 70 | the |end of p|
|00001b10| 72 6f 63 65 73 73 20 74 | 6f 20 74 68 65 20 65 6e |rocess t|o the en|
|00001b20| 64 20 6f 66 20 74 68 65 | 20 63 75 72 72 65 6e 74 |d of the| current|
|00001b30| 20 6c 69 6e 65 2e 0a 5c | 5b 63 6f 6d 69 6e 74 2d | line..\|[comint-|
|00001b40| 73 65 6e 64 2d 69 6e 70 | 75 74 5d 20 62 65 66 6f |send-inp|ut] befo|
|00001b50| 72 65 20 65 6e 64 20 6f | 66 20 70 72 6f 63 65 73 |re end o|f proces|
|00001b60| 73 20 6f 75 74 70 75 74 | 20 63 6f 70 69 65 73 20 |s output| copies |
|00001b70| 74 68 65 20 63 75 72 72 | 65 6e 74 20 6c 69 6e 65 |the curr|ent line|
|00001b80| 20 6d 69 6e 75 73 20 74 | 68 65 20 70 72 6f 6d 70 | minus t|he promp|
|00001b90| 74 20 74 6f 0a 20 20 20 | 20 74 68 65 20 65 6e 64 |t to. | the end|
|00001ba0| 20 6f 66 20 74 68 65 20 | 62 75 66 66 65 72 20 61 | of the |buffer a|
|00001bb0| 6e 64 20 73 65 6e 64 73 | 20 69 74 20 28 5c 5b 63 |nd sends| it (\[c|
|00001bc0| 6f 6d 69 6e 74 2d 63 6f | 70 79 2d 6f 6c 64 2d 69 |omint-co|py-old-i|
|00001bd0| 6e 70 75 74 5d 20 6a 75 | 73 74 20 63 6f 70 69 65 |nput] ju|st copie|
|00001be0| 73 20 74 68 65 20 63 75 | 72 72 65 6e 74 20 6c 69 |s the cu|rrent li|
|00001bf0| 6e 65 29 2e 0a 5c 5b 73 | 65 6e 64 2d 69 6e 76 69 |ne)..\[s|end-invi|
|00001c00| 73 69 62 6c 65 5d 20 72 | 65 61 64 73 20 61 20 6c |sible] r|eads a l|
|00001c10| 69 6e 65 20 6f 66 20 74 | 65 78 74 20 77 69 74 68 |ine of t|ext with|
|00001c20| 6f 75 74 20 65 63 68 6f | 69 6e 67 20 69 74 2c 20 |out echo|ing it, |
|00001c30| 61 6e 64 20 73 65 6e 64 | 73 20 69 74 20 74 6f 0a |and send|s it to.|
|00001c40| 20 20 20 20 74 68 65 20 | 73 68 65 6c 6c 2e 20 20 | the |shell. |
|00001c50| 54 68 69 73 20 69 73 20 | 75 73 65 66 75 6c 20 66 |This is |useful f|
|00001c60| 6f 72 20 65 6e 74 65 72 | 69 6e 67 20 70 61 73 73 |or enter|ing pass|
|00001c70| 77 6f 72 64 73 2e 20 20 | 4f 72 2c 20 61 64 64 20 |words. |Or, add |
|00001c80| 74 68 65 20 66 75 6e 63 | 74 69 6f 6e 0a 20 20 20 |the func|tion. |
|00001c90| 20 60 63 6f 6d 69 6e 74 | 2d 77 61 74 63 68 2d 66 | `comint|-watch-f|
|00001ca0| 6f 72 2d 70 61 73 73 77 | 6f 72 64 2d 70 72 6f 6d |or-passw|ord-prom|
|00001cb0| 70 74 27 20 74 6f 20 60 | 63 6f 6d 69 6e 74 2d 6f |pt' to `|comint-o|
|00001cc0| 75 74 70 75 74 2d 66 69 | 6c 74 65 72 2d 66 75 6e |utput-fi|lter-fun|
|00001cd0| 63 74 69 6f 6e 73 27 2e | 0a 0a 49 66 20 79 6f 75 |ctions'.|..If you|
|00001ce0| 20 77 61 6e 74 20 74 6f | 20 6d 61 6b 65 20 6d 75 | want to| make mu|
|00001cf0| 6c 74 69 70 6c 65 20 73 | 68 65 6c 6c 20 62 75 66 |ltiple s|hell buf|
|00001d00| 66 65 72 73 2c 20 72 65 | 6e 61 6d 65 20 74 68 65 |fers, re|name the|
|00001d10| 20 60 2a 73 68 65 6c 6c | 2a 27 20 62 75 66 66 65 | `*shell|*' buffe|
|00001d20| 72 0a 75 73 69 6e 67 20 | 5c 5b 72 65 6e 61 6d 65 |r.using |\[rename|
|00001d30| 2d 62 75 66 66 65 72 5d | 20 6f 72 20 5c 5b 72 65 |-buffer]| or \[re|
|00001d40| 6e 61 6d 65 2d 75 6e 69 | 71 75 65 6c 79 5d 20 61 |name-uni|quely] a|
|00001d50| 6e 64 20 73 74 61 72 74 | 20 61 20 6e 65 77 20 73 |nd start| a new s|
|00001d60| 68 65 6c 6c 2e 0a 0a 49 | 66 20 79 6f 75 20 77 61 |hell...I|f you wa|
|00001d70| 6e 74 20 74 6f 20 6d 61 | 6b 65 20 73 68 65 6c 6c |nt to ma|ke shell|
|00001d80| 20 62 75 66 66 65 72 73 | 20 6c 69 6d 69 74 65 64 | buffers| limited|
|00001d90| 20 69 6e 20 6c 65 6e 67 | 74 68 2c 20 61 64 64 20 | in leng|th, add |
|00001da0| 74 68 65 20 66 75 6e 63 | 74 69 6f 6e 0a 60 63 6f |the func|tion.`co|
|00001db0| 6d 69 6e 74 2d 74 72 75 | 6e 63 61 74 65 2d 62 75 |mint-tru|ncate-bu|
|00001dc0| 66 66 65 72 27 20 74 6f | 20 60 63 6f 6d 69 6e 74 |ffer' to| `comint|
|00001dd0| 2d 6f 75 74 70 75 74 2d | 66 69 6c 74 65 72 2d 66 |-output-|filter-f|
|00001de0| 75 6e 63 74 69 6f 6e 73 | 27 2e 0a 0a 49 66 20 79 |unctions|'...If y|
|00001df0| 6f 75 20 61 63 63 69 64 | 65 6e 74 61 6c 6c 79 20 |ou accid|entally |
|00001e00| 73 75 73 70 65 6e 64 20 | 79 6f 75 72 20 70 72 6f |suspend |your pro|
|00001e10| 63 65 73 73 2c 20 75 73 | 65 20 5c 5b 63 6f 6d 69 |cess, us|e \[comi|
|00001e20| 6e 74 2d 63 6f 6e 74 69 | 6e 75 65 2d 73 75 62 6a |nt-conti|nue-subj|
|00001e30| 6f 62 5d 0a 74 6f 20 63 | 6f 6e 74 69 6e 75 65 20 |ob].to c|ontinue |
|00001e40| 69 74 2e 0a 0a 60 63 64 | 27 2c 20 60 70 75 73 68 |it...`cd|', `push|
|00001e50| 64 27 20 61 6e 64 20 60 | 70 6f 70 64 27 20 63 6f |d' and `|popd' co|
|00001e60| 6d 6d 61 6e 64 73 20 67 | 69 76 65 6e 20 74 6f 20 |mmands g|iven to |
|00001e70| 74 68 65 20 73 68 65 6c | 6c 20 61 72 65 20 77 61 |the shel|l are wa|
|00001e80| 74 63 68 65 64 20 62 79 | 20 45 6d 61 63 73 20 74 |tched by| Emacs t|
|00001e90| 6f 0a 6b 65 65 70 20 74 | 68 69 73 20 62 75 66 66 |o.keep t|his buff|
|00001ea0| 65 72 27 73 20 64 65 66 | 61 75 6c 74 20 64 69 72 |er's def|ault dir|
|00001eb0| 65 63 74 6f 72 79 20 74 | 68 65 20 73 61 6d 65 20 |ectory t|he same |
|00001ec0| 61 73 20 74 68 65 20 73 | 68 65 6c 6c 27 73 20 77 |as the s|hell's w|
|00001ed0| 6f 72 6b 69 6e 67 20 64 | 69 72 65 63 74 6f 72 79 |orking d|irectory|
|00001ee0| 2e 0a 57 68 69 6c 65 20 | 64 69 72 65 63 74 6f 72 |..While |director|
|00001ef0| 79 20 74 72 61 63 6b 69 | 6e 67 20 69 73 20 65 6e |y tracki|ng is en|
|00001f00| 61 62 6c 65 64 2c 20 74 | 68 65 20 73 68 65 6c 6c |abled, t|he shell|
|00001f10| 27 73 20 77 6f 72 6b 69 | 6e 67 20 64 69 72 65 63 |'s worki|ng direc|
|00001f20| 74 6f 72 79 20 69 73 20 | 64 69 73 70 6c 61 79 65 |tory is |displaye|
|00001f30| 64 0a 62 79 20 5c 5b 6c | 69 73 74 2d 62 75 66 66 |d.by \[l|ist-buff|
|00001f40| 65 72 73 5d 20 6f 72 20 | 5c 5b 6d 6f 75 73 65 2d |ers] or |\[mouse-|
|00001f50| 62 75 66 66 65 72 2d 6d | 65 6e 75 5d 20 69 6e 20 |buffer-m|enu] in |
|00001f60| 74 68 65 20 60 46 69 6c | 65 27 20 66 69 65 6c 64 |the `Fil|e' field|
|00001f70| 2e 0a 5c 5b 64 69 72 73 | 5d 20 71 75 65 72 69 65 |..\[dirs|] querie|
|00001f80| 73 20 74 68 65 20 73 68 | 65 6c 6c 20 61 6e 64 20 |s the sh|ell and |
|00001f90| 72 65 73 79 6e 63 73 20 | 45 6d 61 63 73 27 20 69 |resyncs |Emacs' i|
|00001fa0| 64 65 61 20 6f 66 20 77 | 68 61 74 20 74 68 65 20 |dea of w|hat the |
|00001fb0| 63 75 72 72 65 6e 74 20 | 0a 20 20 20 20 64 69 72 |current |. dir|
|00001fc0| 65 63 74 6f 72 79 20 73 | 74 61 63 6b 20 69 73 2e |ectory s|tack is.|
|00001fd0| 0a 5c 5b 64 69 72 74 72 | 61 63 6b 2d 74 6f 67 67 |.\[dirtr|ack-togg|
|00001fe0| 6c 65 5d 20 74 75 72 6e | 73 20 64 69 72 65 63 74 |le] turn|s direct|
|00001ff0| 6f 72 79 20 74 72 61 63 | 6b 69 6e 67 20 6f 6e 20 |ory trac|king on |
|00002000| 61 6e 64 20 6f 66 66 2e | 0a 0a 5c 7b 73 68 65 6c |and off.|..\{shel|
|00002010| 6c 2d 6d 6f 64 65 2d 6d | 61 70 7d 0a 43 75 73 74 |l-mode-m|ap}.Cust|
|00002020| 6f 6d 69 7a 61 74 69 6f | 6e 3a 20 45 6e 74 72 79 |omizatio|n: Entry|
|00002030| 20 74 6f 20 74 68 69 73 | 20 6d 6f 64 65 20 72 75 | to this| mode ru|
|00002040| 6e 73 20 74 68 65 20 68 | 6f 6f 6b 73 20 6f 6e 20 |ns the h|ooks on |
|00002050| 60 63 6f 6d 69 6e 74 2d | 6d 6f 64 65 2d 68 6f 6f |`comint-|mode-hoo|
|00002060| 6b 27 20 61 6e 64 0a 60 | 73 68 65 6c 6c 2d 6d 6f |k' and.`|shell-mo|
|00002070| 64 65 2d 68 6f 6f 6b 27 | 20 28 69 6e 20 74 68 61 |de-hook'| (in tha|
|00002080| 74 20 6f 72 64 65 72 29 | 2e 20 20 42 65 66 6f 72 |t order)|. Befor|
|00002090| 65 20 65 61 63 68 20 69 | 6e 70 75 74 2c 20 74 68 |e each i|nput, th|
|000020a0| 65 20 68 6f 6f 6b 73 20 | 6f 6e 0a 60 63 6f 6d 69 |e hooks |on.`comi|
|000020b0| 6e 74 2d 69 6e 70 75 74 | 2d 66 69 6c 74 65 72 2d |nt-input|-filter-|
|000020c0| 66 75 6e 63 74 69 6f 6e | 73 27 20 61 72 65 20 72 |function|s' are r|
|000020d0| 75 6e 2e 20 20 41 66 74 | 65 72 20 65 61 63 68 20 |un. Aft|er each |
|000020e0| 73 68 65 6c 6c 20 6f 75 | 74 70 75 74 2c 20 74 68 |shell ou|tput, th|
|000020f0| 65 20 68 6f 6f 6b 73 0a | 6f 6e 20 60 63 6f 6d 69 |e hooks.|on `comi|
|00002100| 6e 74 2d 6f 75 74 70 75 | 74 2d 66 69 6c 74 65 72 |nt-outpu|t-filter|
|00002110| 2d 66 75 6e 63 74 69 6f | 6e 73 27 20 61 72 65 20 |-functio|ns' are |
|00002120| 72 75 6e 2e 0a 0a 56 61 | 72 69 61 62 6c 65 73 20 |run...Va|riables |
|00002130| 60 73 68 65 6c 6c 2d 63 | 64 2d 72 65 67 65 78 70 |`shell-c|d-regexp|
|00002140| 27 2c 20 60 73 68 65 6c | 6c 2d 63 68 64 72 69 76 |', `shel|l-chdriv|
|00002150| 65 2d 72 65 67 65 78 70 | 27 2c 20 60 73 68 65 6c |e-regexp|', `shel|
|00002160| 6c 2d 70 75 73 68 64 2d | 72 65 67 65 78 70 27 20 |l-pushd-|regexp' |
|00002170| 0a 61 6e 64 20 60 73 68 | 65 6c 6c 2d 70 6f 70 64 |.and `sh|ell-popd|
|00002180| 2d 72 65 67 65 78 70 27 | 20 61 72 65 20 75 73 65 |-regexp'| are use|
|00002190| 64 20 74 6f 20 6d 61 74 | 63 68 20 74 68 65 69 72 |d to mat|ch their|
|000021a0| 20 72 65 73 70 65 63 74 | 69 76 65 20 63 6f 6d 6d | respect|ive comm|
|000021b0| 61 6e 64 73 2c 20 0a 77 | 68 69 6c 65 20 60 73 68 |ands, .w|hile `sh|
|000021c0| 65 6c 6c 2d 70 75 73 68 | 64 2d 74 6f 68 6f 6d 65 |ell-push|d-tohome|
|000021d0| 27 2c 20 60 73 68 65 6c | 6c 2d 70 75 73 68 64 2d |', `shel|l-pushd-|
|000021e0| 64 65 78 74 72 61 63 74 | 27 20 61 6e 64 20 60 73 |dextract|' and `s|
|000021f0| 68 65 6c 6c 2d 70 75 73 | 68 64 2d 64 75 6e 69 71 |hell-pus|hd-duniq|
|00002200| 75 65 27 20 0a 63 6f 6e | 74 72 6f 6c 20 74 68 65 |ue' .con|trol the|
|00002210| 20 62 65 68 61 76 69 6f | 72 20 6f 66 20 74 68 65 | behavio|r of the|
|00002220| 20 72 65 6c 65 76 61 6e | 74 20 63 6f 6d 6d 61 6e | relevan|t comman|
|00002230| 64 2e 0a 0a 56 61 72 69 | 61 62 6c 65 73 20 60 63 |d...Vari|ables `c|
|00002240| 6f 6d 69 6e 74 2d 63 6f | 6d 70 6c 65 74 69 6f 6e |omint-co|mpletion|
|00002250| 2d 61 75 74 6f 6c 69 73 | 74 27 2c 20 60 63 6f 6d |-autolis|t', `com|
|00002260| 69 6e 74 2d 63 6f 6d 70 | 6c 65 74 69 6f 6e 2d 61 |int-comp|letion-a|
|00002270| 64 64 73 75 66 66 69 78 | 27 2c 0a 60 63 6f 6d 69 |ddsuffix|',.`comi|
|00002280| 6e 74 2d 63 6f 6d 70 6c | 65 74 69 6f 6e 2d 72 65 |nt-compl|etion-re|
|00002290| 63 65 78 61 63 74 27 20 | 61 6e 64 20 60 63 6f 6d |cexact' |and `com|
|000022a0| 69 6e 74 2d 63 6f 6d 70 | 6c 65 74 69 6f 6e 2d 66 |int-comp|letion-f|
|000022b0| 69 67 6e 6f 72 65 27 20 | 63 6f 6e 74 72 6f 6c 20 |ignore' |control |
|000022c0| 74 68 65 0a 62 65 68 61 | 76 69 6f 72 20 6f 66 20 |the.beha|vior of |
|000022d0| 66 69 6c 65 20 6e 61 6d | 65 2c 20 63 6f 6d 6d 61 |file nam|e, comma|
|000022e0| 6e 64 20 6e 61 6d 65 20 | 61 6e 64 20 76 61 72 69 |nd name |and vari|
|000022f0| 61 62 6c 65 20 6e 61 6d | 65 20 63 6f 6d 70 6c 65 |able nam|e comple|
|00002300| 74 69 6f 6e 2e 20 20 56 | 61 72 69 61 62 6c 65 0a |tion. V|ariable.|
|00002310| 60 73 68 65 6c 6c 2d 63 | 6f 6d 70 6c 65 74 69 6f |`shell-c|ompletio|
|00002320| 6e 2d 65 78 65 63 6f 6e | 6c 79 27 20 63 6f 6e 74 |n-execon|ly' cont|
|00002330| 72 6f 6c 73 20 74 68 65 | 20 62 65 68 61 76 69 6f |rols the| behavio|
|00002340| 72 20 6f 66 20 63 6f 6d | 6d 61 6e 64 20 6e 61 6d |r of com|mand nam|
|00002350| 65 20 63 6f 6d 70 6c 65 | 74 69 6f 6e 2e 0a 56 61 |e comple|tion..Va|
|00002360| 72 69 61 62 6c 65 20 60 | 73 68 65 6c 6c 2d 63 6f |riable `|shell-co|
|00002370| 6d 70 6c 65 74 69 6f 6e | 2d 66 69 67 6e 6f 72 65 |mpletion|-fignore|
|00002380| 27 20 69 73 20 75 73 65 | 64 20 74 6f 20 69 6e 69 |' is use|d to ini|
|00002390| 74 69 61 6c 69 73 65 20 | 74 68 65 20 76 61 6c 75 |tialise |the valu|
|000023a0| 65 20 6f 66 0a 60 63 6f | 6d 69 6e 74 2d 63 6f 6d |e of.`co|mint-com|
|000023b0| 70 6c 65 74 69 6f 6e 2d | 66 69 67 6e 6f 72 65 27 |pletion-|fignore'|
|000023c0| 2e 0a 0a 56 61 72 69 61 | 62 6c 65 73 20 60 63 6f |...Varia|bles `co|
|000023d0| 6d 69 6e 74 2d 69 6e 70 | 75 74 2d 72 69 6e 67 2d |mint-inp|ut-ring-|
|000023e0| 66 69 6c 65 2d 6e 61 6d | 65 27 20 61 6e 64 20 60 |file-nam|e' and `|
|000023f0| 63 6f 6d 69 6e 74 2d 69 | 6e 70 75 74 2d 61 75 74 |comint-i|nput-aut|
|00002400| 6f 65 78 70 61 6e 64 27 | 20 63 6f 6e 74 72 6f 6c |oexpand'| control|
|00002410| 0a 74 68 65 20 69 6e 69 | 74 69 61 6c 69 73 61 74 |.the ini|tialisat|
|00002420| 69 6f 6e 20 6f 66 20 74 | 68 65 20 69 6e 70 75 74 |ion of t|he input|
|00002430| 20 72 69 6e 67 20 68 69 | 73 74 6f 72 79 2c 20 61 | ring hi|story, a|
|00002440| 6e 64 20 68 69 73 74 6f | 72 79 20 65 78 70 61 6e |nd histo|ry expan|
|00002450| 73 69 6f 6e 2e 0a 0a 56 | 61 72 69 61 62 6c 65 73 |sion...V|ariables|
|00002460| 20 60 63 6f 6d 69 6e 74 | 2d 6f 75 74 70 75 74 2d | `comint|-output-|
|00002470| 66 69 6c 74 65 72 2d 66 | 75 6e 63 74 69 6f 6e 73 |filter-f|unctions|
|00002480| 27 2c 20 61 20 68 6f 6f | 6b 2c 20 61 6e 64 0a 60 |', a hoo|k, and.`|
|00002490| 63 6f 6d 69 6e 74 2d 73 | 63 72 6f 6c 6c 2d 74 6f |comint-s|croll-to|
|000024a0| 2d 62 6f 74 74 6f 6d 2d | 6f 6e 2d 69 6e 70 75 74 |-bottom-|on-input|
|000024b0| 27 20 61 6e 64 20 60 63 | 6f 6d 69 6e 74 2d 73 63 |' and `c|omint-sc|
|000024c0| 72 6f 6c 6c 2d 74 6f 2d | 62 6f 74 74 6f 6d 2d 6f |roll-to-|bottom-o|
|000024d0| 6e 2d 6f 75 74 70 75 74 | 27 0a 63 6f 6e 74 72 6f |n-output|'.contro|
|000024e0| 6c 20 77 68 65 74 68 65 | 72 20 69 6e 70 75 74 20 |l whethe|r input |
|000024f0| 61 6e 64 20 6f 75 74 70 | 75 74 20 63 61 75 73 65 |and outp|ut cause|
|00002500| 20 74 68 65 20 77 69 6e | 64 6f 77 20 74 6f 20 73 | the win|dow to s|
|00002510| 63 72 6f 6c 6c 20 74 6f | 20 74 68 65 20 65 6e 64 |croll to| the end|
|00002520| 20 6f 66 20 74 68 65 0a | 62 75 66 66 65 72 2e 1f | of the.|buffer..|
|00002530| 0a 28 64 65 66 61 6c 69 | 61 73 20 27 73 68 65 6c |.(defali|as 'shel|
|00002540| 6c 2d 6d 6f 64 65 20 23 | 5b 6e 69 6c 20 22 c0 20 |l-mode #|[nil ". |
|00002550| 88 c1 12 c3 14 c5 0e 06 | 21 88 0e 07 16 08 0e 09 |........|!.......|
|00002560| 16 5c 6e 0e 0b 16 5c 66 | 0e 0d 16 0e 0e 0f 16 10 |.\n...\f|........|
|00002570| 0e 11 16 12 d3 d4 21 88 | 0e 08 16 14 d3 d5 21 88 |......!.|......!.|
|00002580| d6 16 15 d3 d7 21 88 d8 | 16 17 d8 16 19 d3 da 21 |.....!..|.......!|
|00002590| 88 db 16 1a dc dd de d8 | db 24 88 0e 1f 16 20 d3 |........|.$.... .|
|000025a0| e1 21 88 e2 0e 23 21 16 | 21 e4 e5 e6 70 21 21 40 |.!...#!.|!...p!!@|
|000025b0| 21 1e 27 e8 e9 21 86 80 | 00 0e 27 ea 98 83 74 00 |!.'..!..|..'...t.|
|000025c0| eb 82 80 00 0e 27 ec 98 | 83 7f 00 ed 82 80 00 ee |.....'..|........|
|000025d0| 89 16 2f f0 9a 84 91 00 | f1 0e 2f 21 f2 9a 83 94 |../.....|../!....|
|000025e0| 00 d8 16 2f 0e 27 f3 98 | 83 9f 00 f4 82 ab 00 0e |.../.'..|........|
|000025f0| 27 ec 98 83 aa 00 f5 82 | ab 00 f6 16 37 29 f8 f9 |'.......|....7)..|
|00002600| 21 88 fa db 21 87 22 20 | 5b 63 6f 6d 69 6e 74 2d |!...!." |[comint-|
|00002610| 6d 6f 64 65 20 73 68 65 | 6c 6c 2d 6d 6f 64 65 20 |mode she|ll-mode |
|00002620| 6d 61 6a 6f 72 2d 6d 6f | 64 65 20 22 53 68 65 6c |major-mo|de "Shel|
|00002630| 6c 22 20 6d 6f 64 65 2d | 6e 61 6d 65 20 75 73 65 |l" mode-|name use|
|00002640| 2d 6c 6f 63 61 6c 2d 6d | 61 70 20 73 68 65 6c 6c |-local-m|ap shell|
|00002650| 2d 6d 6f 64 65 2d 6d 61 | 70 20 73 68 65 6c 6c 2d |-mode-ma|p shell-|
|00002660| 70 72 6f 6d 70 74 2d 70 | 61 74 74 65 72 6e 20 63 |prompt-p|attern c|
|00002670| 6f 6d 69 6e 74 2d 70 72 | 6f 6d 70 74 2d 72 65 67 |omint-pr|ompt-reg|
|00002680| 65 78 70 20 73 68 65 6c | 6c 2d 63 6f 6d 70 6c 65 |exp shel|l-comple|
|00002690| 74 69 6f 6e 2d 66 69 67 | 6e 6f 72 65 20 63 6f 6d |tion-fig|nore com|
|000026a0| 69 6e 74 2d 63 6f 6d 70 | 6c 65 74 69 6f 6e 2d 66 |int-comp|letion-f|
|000026b0| 69 67 6e 6f 72 65 20 73 | 68 65 6c 6c 2d 64 65 6c |ignore s|hell-del|
|000026c0| 69 6d 69 74 65 72 2d 61 | 72 67 75 6d 65 6e 74 2d |imiter-a|rgument-|
|000026d0| 6c 69 73 74 20 63 6f 6d | 69 6e 74 2d 64 65 6c 69 |list com|int-deli|
|000026e0| 6d 69 74 65 72 2d 61 72 | 67 75 6d 65 6e 74 2d 6c |miter-ar|gument-l|
|000026f0| 69 73 74 20 73 68 65 6c | 6c 2d 66 69 6c 65 2d 6e |ist shel|l-file-n|
|00002700| 61 6d 65 2d 63 68 61 72 | 73 20 63 6f 6d 69 6e 74 |ame-char|s comint|
|00002710| 2d 66 69 6c 65 2d 6e 61 | 6d 65 2d 63 68 61 72 73 |-file-na|me-chars|
|00002720| 20 73 68 65 6c 6c 2d 66 | 69 6c 65 2d 6e 61 6d 65 | shell-f|ile-name|
|00002730| 2d 71 75 6f 74 65 2d 6c | 69 73 74 20 63 6f 6d 69 |-quote-l|ist comi|
|00002740| 6e 74 2d 66 69 6c 65 2d | 6e 61 6d 65 2d 71 75 6f |nt-file-|name-quo|
|00002750| 74 65 2d 6c 69 73 74 20 | 73 68 65 6c 6c 2d 64 79 |te-list |shell-dy|
|00002760| 6e 61 6d 69 63 2d 63 6f | 6d 70 6c 65 74 65 2d 66 |namic-co|mplete-f|
|00002770| 75 6e 63 74 69 6f 6e 73 | 20 63 6f 6d 69 6e 74 2d |unctions| comint-|
|00002780| 64 79 6e 61 6d 69 63 2d | 63 6f 6d 70 6c 65 74 65 |dynamic-|complete|
|00002790| 2d 66 75 6e 63 74 69 6f | 6e 73 20 6d 61 6b 65 2d |-functio|ns make-|
|000027a0| 6c 6f 63 61 6c 2d 76 61 | 72 69 61 62 6c 65 20 70 |local-va|riable p|
|000027b0| 61 72 61 67 72 61 70 68 | 2d 73 74 61 72 74 20 66 |aragraph|-start f|
|000027c0| 6f 6e 74 2d 6c 6f 63 6b | 2d 64 65 66 61 75 6c 74 |ont-lock|-default|
|000027d0| 73 20 28 73 68 65 6c 6c | 2d 66 6f 6e 74 2d 6c 6f |s (shell|-font-lo|
|000027e0| 63 6b 2d 6b 65 79 77 6f | 72 64 73 20 74 29 20 73 |ck-keywo|rds t) s|
|000027f0| 68 65 6c 6c 2d 64 69 72 | 73 74 61 63 6b 20 6e 69 |hell-dir|stack ni|
|00002800| 6c 20 73 68 65 6c 6c 2d | 6c 61 73 74 2d 64 69 72 |l shell-|last-dir|
|00002810| 20 73 68 65 6c 6c 2d 64 | 69 72 74 72 61 63 6b 70 | shell-d|irtrackp|
|00002820| 20 74 20 61 64 64 2d 68 | 6f 6f 6b 20 63 6f 6d 69 | t add-h|ook comi|
|00002830| 6e 74 2d 69 6e 70 75 74 | 2d 66 69 6c 74 65 72 2d |nt-input|-filter-|
|00002840| 66 75 6e 63 74 69 6f 6e | 73 20 73 68 65 6c 6c 2d |function|s shell-|
|00002850| 64 69 72 65 63 74 6f 72 | 79 2d 74 72 61 63 6b 65 |director|y-tracke|
|00002860| 72 20 73 68 65 6c 6c 2d | 69 6e 70 75 74 2d 61 75 |r shell-|input-au|
|00002870| 74 6f 65 78 70 61 6e 64 | 20 63 6f 6d 69 6e 74 2d |toexpand| comint-|
|00002880| 69 6e 70 75 74 2d 61 75 | 74 6f 65 78 70 61 6e 64 |input-au|toexpand|
|00002890| 20 6c 69 73 74 2d 62 75 | 66 66 65 72 73 2d 64 69 | list-bu|ffers-di|
|000028a0| 72 65 63 74 6f 72 79 20 | 65 78 70 61 6e 64 2d 66 |rectory |expand-f|
|000028b0| 69 6c 65 2d 6e 61 6d 65 | 20 64 65 66 61 75 6c 74 |ile-name| default|
|000028c0| 2d 64 69 72 65 63 74 6f | 72 79 20 66 69 6c 65 2d |-directo|ry file-|
|000028d0| 6e 61 6d 65 2d 6e 6f 6e | 64 69 72 65 63 74 6f 72 |name-non|director|
|000028e0| 79 20 70 72 6f 63 65 73 | 73 2d 63 6f 6d 6d 61 6e |y proces|s-comman|
|000028f0| 64 20 67 65 74 2d 62 75 | 66 66 65 72 2d 70 72 6f |d get-bu|ffer-pro|
|00002900| 63 65 73 73 20 73 68 65 | 6c 6c 20 67 65 74 65 6e |cess she|ll geten|
|00002910| 76 20 22 48 49 53 54 46 | 49 4c 45 22 20 22 62 61 |v "HISTF|ILE" "ba|
|00002920| 73 68 22 20 22 7e 2f 2e | 62 61 73 68 5f 68 69 73 |sh" "~/.|bash_his|
|00002930| 74 6f 72 79 22 20 22 6b | 73 68 22 20 22 7e 2f 2e |tory" "k|sh" "~/.|
|00002940| 73 68 5f 68 69 73 74 6f | 72 79 22 20 22 7e 2f 2e |sh_histo|ry" "~/.|
|00002950| 68 69 73 74 6f 72 79 22 | 20 63 6f 6d 69 6e 74 2d |history"| comint-|
|00002960| 69 6e 70 75 74 2d 72 69 | 6e 67 2d 66 69 6c 65 2d |input-ri|ng-file-|
|00002970| 6e 61 6d 65 20 22 22 20 | 66 69 6c 65 2d 74 72 75 |name "" |file-tru|
|00002980| 65 6e 61 6d 65 20 22 2f | 64 65 76 2f 6e 75 6c 6c |ename "/|dev/null|
|00002990| 22 20 22 73 68 22 20 22 | 70 77 64 22 20 22 65 63 |" "sh" "|pwd" "ec|
|000029a0| 68 6f 20 24 50 57 44 20 | 7e 2d 22 20 22 64 69 72 |ho $PWD |~-" "dir|
|000029b0| 73 22 20 73 68 65 6c 6c | 2d 64 69 72 73 74 61 63 |s" shell|-dirstac|
|000029c0| 6b 2d 71 75 65 72 79 20 | 72 75 6e 2d 68 6f 6f 6b |k-query |run-hook|
|000029d0| 73 20 73 68 65 6c 6c 2d | 6d 6f 64 65 2d 68 6f 6f |s shell-|mode-hoo|
|000029e0| 6b 20 63 6f 6d 69 6e 74 | 2d 72 65 61 64 2d 69 6e |k comint|-read-in|
|000029f0| 70 75 74 2d 72 69 6e 67 | 5d 20 36 20 28 23 24 20 |put-ring|] 6 (#$ |
|00002a00| 2e 20 36 37 38 33 29 20 | 6e 69 6c 5d 29 0a 23 40 |. 6783) |nil]).#@|
|00002a10| 31 30 32 35 20 52 75 6e | 20 61 6e 20 69 6e 66 65 |1025 Run| an infe|
|00002a20| 72 69 6f 72 20 73 68 65 | 6c 6c 2c 20 77 69 74 68 |rior she|ll, with|
|00002a30| 20 49 2f 4f 20 74 68 72 | 6f 75 67 68 20 62 75 66 | I/O thr|ough buf|
|00002a40| 66 65 72 20 2a 73 68 65 | 6c 6c 2a 2e 0a 49 66 20 |fer *she|ll*..If |
|00002a50| 62 75 66 66 65 72 20 65 | 78 69 73 74 73 20 62 75 |buffer e|xists bu|
|00002a60| 74 20 73 68 65 6c 6c 20 | 70 72 6f 63 65 73 73 20 |t shell |process |
|00002a70| 69 73 20 6e 6f 74 20 72 | 75 6e 6e 69 6e 67 2c 20 |is not r|unning, |
|00002a80| 6d 61 6b 65 20 6e 65 77 | 20 73 68 65 6c 6c 2e 0a |make new| shell..|
|00002a90| 49 66 20 62 75 66 66 65 | 72 20 65 78 69 73 74 73 |If buffe|r exists|
|00002aa0| 20 61 6e 64 20 73 68 65 | 6c 6c 20 70 72 6f 63 65 | and she|ll proce|
|00002ab0| 73 73 20 69 73 20 72 75 | 6e 6e 69 6e 67 2c 20 6a |ss is ru|nning, j|
|00002ac0| 75 73 74 20 73 77 69 74 | 63 68 20 74 6f 20 62 75 |ust swit|ch to bu|
|00002ad0| 66 66 65 72 20 60 2a 73 | 68 65 6c 6c 2a 27 2e 0a |ffer `*s|hell*'..|
|00002ae0| 50 72 6f 67 72 61 6d 20 | 75 73 65 64 20 63 6f 6d |Program |used com|
|00002af0| 65 73 20 66 72 6f 6d 20 | 76 61 72 69 61 62 6c 65 |es from |variable|
|00002b00| 20 60 65 78 70 6c 69 63 | 69 74 2d 73 68 65 6c 6c | `explic|it-shell|
|00002b10| 2d 66 69 6c 65 2d 6e 61 | 6d 65 27 2c 0a 20 6f 72 |-file-na|me',. or|
|00002b20| 20 28 69 66 20 74 68 61 | 74 20 69 73 20 6e 69 6c | (if tha|t is nil|
|00002b30| 29 20 66 72 6f 6d 20 74 | 68 65 20 45 53 48 45 4c |) from t|he ESHEL|
|00002b40| 4c 20 65 6e 76 69 72 6f | 6e 6d 65 6e 74 20 76 61 |L enviro|nment va|
|00002b50| 72 69 61 62 6c 65 2c 0a | 20 6f 72 20 65 6c 73 65 |riable,.| or else|
|00002b60| 20 66 72 6f 6d 20 53 48 | 45 4c 4c 20 69 66 20 74 | from SH|ELL if t|
|00002b70| 68 65 72 65 20 69 73 20 | 6e 6f 20 45 53 48 45 4c |here is |no ESHEL|
|00002b80| 4c 2e 0a 49 66 20 61 20 | 66 69 6c 65 20 60 7e 2f |L..If a |file `~/|
|00002b90| 2e 65 6d 61 63 73 5f 53 | 48 45 4c 4c 4e 41 4d 45 |.emacs_S|HELLNAME|
|00002ba0| 27 20 65 78 69 73 74 73 | 2c 20 69 74 20 69 73 20 |' exists|, it is |
|00002bb0| 67 69 76 65 6e 20 61 73 | 20 69 6e 69 74 69 61 6c |given as| initial|
|00002bc0| 20 69 6e 70 75 74 0a 20 | 28 4e 6f 74 65 20 74 68 | input. |(Note th|
|00002bd0| 61 74 20 74 68 69 73 20 | 6d 61 79 20 6c 6f 73 65 |at this |may lose|
|00002be0| 20 64 75 65 20 74 6f 20 | 61 20 74 69 6d 69 6e 67 | due to |a timing|
|00002bf0| 20 65 72 72 6f 72 20 69 | 66 20 74 68 65 20 73 68 | error i|f the sh|
|00002c00| 65 6c 6c 0a 20 20 64 69 | 73 63 61 72 64 73 20 69 |ell. di|scards i|
|00002c10| 6e 70 75 74 20 77 68 65 | 6e 20 69 74 20 73 74 61 |nput whe|n it sta|
|00002c20| 72 74 73 20 75 70 2e 29 | 0a 54 68 65 20 62 75 66 |rts up.)|.The buf|
|00002c30| 66 65 72 20 69 73 20 70 | 75 74 20 69 6e 20 53 68 |fer is p|ut in Sh|
|00002c40| 65 6c 6c 20 6d 6f 64 65 | 2c 20 67 69 76 69 6e 67 |ell mode|, giving|
|00002c50| 20 63 6f 6d 6d 61 6e 64 | 73 20 66 6f 72 20 73 65 | command|s for se|
|00002c60| 6e 64 69 6e 67 20 69 6e | 70 75 74 0a 61 6e 64 20 |nding in|put.and |
|00002c70| 63 6f 6e 74 72 6f 6c 6c | 69 6e 67 20 74 68 65 20 |controll|ing the |
|00002c80| 73 75 62 6a 6f 62 73 20 | 6f 66 20 74 68 65 20 73 |subjobs |of the s|
|00002c90| 68 65 6c 6c 2e 20 20 53 | 65 65 20 60 73 68 65 6c |hell. S|ee `shel|
|00002ca0| 6c 2d 6d 6f 64 65 27 2e | 0a 53 65 65 20 61 6c 73 |l-mode'.|.See als|
|00002cb0| 6f 20 74 68 65 20 76 61 | 72 69 61 62 6c 65 20 60 |o the va|riable `|
|00002cc0| 73 68 65 6c 6c 2d 70 72 | 6f 6d 70 74 2d 70 61 74 |shell-pr|ompt-pat|
|00002cd0| 74 65 72 6e 27 2e 0a 0a | 54 68 65 20 73 68 65 6c |tern'...|The shel|
|00002ce0| 6c 20 66 69 6c 65 20 6e | 61 6d 65 20 28 73 61 6e |l file n|ame (san|
|00002cf0| 73 20 64 69 72 65 63 74 | 6f 72 69 65 73 29 20 69 |s direct|ories) i|
|00002d00| 73 20 75 73 65 64 20 74 | 6f 20 6d 61 6b 65 20 61 |s used t|o make a|
|00002d10| 20 73 79 6d 62 6f 6c 20 | 6e 61 6d 65 0a 73 75 63 | symbol |name.suc|
|00002d20| 68 20 61 73 20 60 65 78 | 70 6c 69 63 69 74 2d 63 |h as `ex|plicit-c|
|00002d30| 73 68 2d 61 72 67 73 27 | 2e 20 20 49 66 20 74 68 |sh-args'|. If th|
|00002d40| 61 74 20 73 79 6d 62 6f | 6c 20 69 73 20 61 20 76 |at symbo|l is a v|
|00002d50| 61 72 69 61 62 6c 65 2c | 0a 69 74 73 20 76 61 6c |ariable,|.its val|
|00002d60| 75 65 20 69 73 20 75 73 | 65 64 20 61 73 20 61 20 |ue is us|ed as a |
|00002d70| 6c 69 73 74 20 6f 66 20 | 61 72 67 75 6d 65 6e 74 |list of |argument|
|00002d80| 73 20 77 68 65 6e 20 69 | 6e 76 6f 6b 69 6e 67 20 |s when i|nvoking |
|00002d90| 74 68 65 20 73 68 65 6c | 6c 2e 0a 4f 74 68 65 72 |the shel|l..Other|
|00002da0| 77 69 73 65 2c 20 6f 6e | 65 20 61 72 67 75 6d 65 |wise, on|e argume|
|00002db0| 6e 74 20 60 2d 69 27 20 | 69 73 20 70 61 73 73 65 |nt `-i' |is passe|
|00002dc0| 64 20 74 6f 20 74 68 65 | 20 73 68 65 6c 6c 2e 0a |d to the| shell..|
|00002dd0| 0a 28 54 79 70 65 20 5c | 5b 64 65 73 63 72 69 62 |.(Type \|[describ|
|00002de0| 65 2d 6d 6f 64 65 5d 20 | 69 6e 20 74 68 65 20 73 |e-mode] |in the s|
|00002df0| 68 65 6c 6c 20 62 75 66 | 66 65 72 20 66 6f 72 20 |hell buf|fer for |
|00002e00| 61 20 6c 69 73 74 20 6f | 66 20 63 6f 6d 6d 61 6e |a list o|f comman|
|00002e10| 64 73 2e 29 1f 0a 28 64 | 65 66 61 6c 69 61 73 20 |ds.)..(d|efalias |
|00002e20| 27 73 68 65 6c 6c 20 23 | 5b 6e 69 6c 20 22 c0 c1 |'shell #|[nil "..|
|00002e30| 21 84 63 00 5c 6e 86 17 | 00 c3 c4 21 86 17 00 c3 |!.c.\n..|...!....|
|00002e40| c5 21 86 17 00 c6 1e 07 | c8 0e 07 21 1e 09 ca 0e |.!......|...!....|
|00002e50| 09 50 1e 0b cc cd 0e 09 | ce 51 21 1e 0f d0 1e 11 |.P......|.Q!.....|
|00002e60| 8a d2 d3 d4 0e 07 d5 0e | 0b 21 85 40 00 0e 0b 0e |........|.!.@....|
|00002e70| 0f 83 52 00 d6 0e 0f 21 | 83 52 00 0e 0f 4a 82 53 |..R....!|.R...J.S|
|00002e80| 00 d7 25 71 88 70 16 11 | d8 20 88 29 d9 0e 11 21 |..%q.p..|. .)...!|
|00002e90| 2d 87 d9 c1 21 87 22 20 | 5b 63 6f 6d 69 6e 74 2d |-...!." |[comint-|
|00002ea0| 63 68 65 63 6b 2d 70 72 | 6f 63 20 22 2a 73 68 65 |check-pr|oc "*she|
|00002eb0| 6c 6c 2a 22 20 65 78 70 | 6c 69 63 69 74 2d 73 68 |ll*" exp|licit-sh|
|00002ec0| 65 6c 6c 2d 66 69 6c 65 | 2d 6e 61 6d 65 20 67 65 |ell-file|-name ge|
|00002ed0| 74 65 6e 76 20 22 45 53 | 48 45 4c 4c 22 20 22 53 |tenv "ES|HELL" "S|
|00002ee0| 48 45 4c 4c 22 20 22 2f | 62 69 6e 2f 73 68 22 20 |HELL" "/|bin/sh" |
|00002ef0| 70 72 6f 67 20 66 69 6c | 65 2d 6e 61 6d 65 2d 6e |prog fil|e-name-n|
|00002f00| 6f 6e 64 69 72 65 63 74 | 6f 72 79 20 6e 61 6d 65 |ondirect|ory name|
|00002f10| 20 22 7e 2f 2e 65 6d 61 | 63 73 5f 22 20 73 74 61 | "~/.ema|cs_" sta|
|00002f20| 72 74 66 69 6c 65 20 69 | 6e 74 65 72 6e 2d 73 6f |rtfile i|ntern-so|
|00002f30| 66 74 20 22 65 78 70 6c | 69 63 69 74 2d 22 20 22 |ft "expl|icit-" "|
|00002f40| 2d 61 72 67 73 22 20 78 | 61 72 67 73 2d 6e 61 6d |-args" x|args-nam|
|00002f50| 65 20 6e 69 6c 20 73 68 | 65 6c 6c 2d 62 75 66 66 |e nil sh|ell-buff|
|00002f60| 65 72 20 61 70 70 6c 79 | 20 6d 61 6b 65 2d 63 6f |er apply| make-co|
|00002f70| 6d 69 6e 74 20 22 73 68 | 65 6c 6c 22 20 66 69 6c |mint "sh|ell" fil|
|00002f80| 65 2d 65 78 69 73 74 73 | 2d 70 20 62 6f 75 6e 64 |e-exists|-p bound|
|00002f90| 70 20 28 22 2d 69 22 29 | 20 73 68 65 6c 6c 2d 6d |p ("-i")| shell-m|
|00002fa0| 6f 64 65 20 70 6f 70 2d | 74 6f 2d 62 75 66 66 65 |ode pop-|to-buffe|
|00002fb0| 72 5d 20 37 20 28 23 24 | 20 2e 20 31 30 37 37 33 |r] 7 (#$| . 10773|
|00002fc0| 29 20 6e 69 6c 5d 29 0a | 23 40 36 36 38 20 54 72 |) nil]).|#@668 Tr|
|00002fd0| 61 63 6b 73 20 63 64 2c | 20 70 75 73 68 64 20 61 |acks cd,| pushd a|
|00002fe0| 6e 64 20 70 6f 70 64 20 | 63 6f 6d 6d 61 6e 64 73 |nd popd |commands|
|00002ff0| 20 69 73 73 75 65 64 20 | 74 6f 20 74 68 65 20 73 | issued |to the s|
|00003000| 68 65 6c 6c 2e 0a 54 68 | 69 73 20 66 75 6e 63 74 |hell..Th|is funct|
|00003010| 69 6f 6e 20 69 73 20 63 | 61 6c 6c 65 64 20 6f 6e |ion is c|alled on|
|00003020| 20 65 61 63 68 20 69 6e | 70 75 74 20 70 61 73 73 | each in|put pass|
|00003030| 65 64 20 74 6f 20 74 68 | 65 20 73 68 65 6c 6c 2e |ed to th|e shell.|
|00003040| 0a 49 74 20 77 61 74 63 | 68 65 73 20 66 6f 72 20 |.It watc|hes for |
|00003050| 63 64 2c 20 70 75 73 68 | 64 20 61 6e 64 20 70 6f |cd, push|d and po|
|00003060| 70 64 20 63 6f 6d 6d 61 | 6e 64 73 20 61 6e 64 20 |pd comma|nds and |
|00003070| 73 65 74 73 20 74 68 65 | 20 62 75 66 66 65 72 27 |sets the| buffer'|
|00003080| 73 0a 64 65 66 61 75 6c | 74 20 64 69 72 65 63 74 |s.defaul|t direct|
|00003090| 6f 72 79 20 74 6f 20 74 | 72 61 63 6b 20 74 68 65 |ory to t|rack the|
|000030a0| 73 65 20 63 6f 6d 6d 61 | 6e 64 73 2e 0a 0a 59 6f |se comma|nds...Yo|
|000030b0| 75 20 6d 61 79 20 74 6f | 67 67 6c 65 20 74 68 69 |u may to|ggle thi|
|000030c0| 73 20 74 72 61 63 6b 69 | 6e 67 20 6f 6e 20 61 6e |s tracki|ng on an|
|000030d0| 64 20 6f 66 66 20 77 69 | 74 68 20 4d 2d 78 20 64 |d off wi|th M-x d|
|000030e0| 69 72 74 72 61 63 6b 2d | 74 6f 67 67 6c 65 2e 0a |irtrack-|toggle..|
|000030f0| 49 66 20 65 6d 61 63 73 | 20 67 65 74 73 20 63 6f |If emacs| gets co|
|00003100| 6e 66 75 73 65 64 2c 20 | 79 6f 75 20 63 61 6e 20 |nfused, |you can |
|00003110| 72 65 73 79 6e 63 20 77 | 69 74 68 20 74 68 65 20 |resync w|ith the |
|00003120| 73 68 65 6c 6c 20 77 69 | 74 68 20 4d 2d 78 20 64 |shell wi|th M-x d|
|00003130| 69 72 73 2e 0a 0a 53 65 | 65 20 76 61 72 69 61 62 |irs...Se|e variab|
|00003140| 6c 65 73 20 60 73 68 65 | 6c 6c 2d 63 64 2d 72 65 |les `she|ll-cd-re|
|00003150| 67 65 78 70 27 2c 20 60 | 73 68 65 6c 6c 2d 63 68 |gexp', `|shell-ch|
|00003160| 64 72 69 76 65 2d 72 65 | 67 65 78 70 27 2c 20 60 |drive-re|gexp', `|
|00003170| 73 68 65 6c 6c 2d 70 75 | 73 68 64 2d 72 65 67 65 |shell-pu|shd-rege|
|00003180| 78 70 27 2c 0a 61 6e 64 | 20 20 60 73 68 65 6c 6c |xp',.and| `shell|
|00003190| 2d 70 6f 70 64 2d 72 65 | 67 65 78 70 27 2c 20 77 |-popd-re|gexp', w|
|000031a0| 68 69 6c 65 20 60 73 68 | 65 6c 6c 2d 70 75 73 68 |hile `sh|ell-push|
|000031b0| 64 2d 74 6f 68 6f 6d 65 | 27 2c 20 60 73 68 65 6c |d-tohome|', `shel|
|000031c0| 6c 2d 70 75 73 68 64 2d | 64 65 78 74 72 61 63 74 |l-pushd-|dextract|
|000031d0| 27 2c 20 0a 61 6e 64 20 | 60 73 68 65 6c 6c 2d 70 |', .and |`shell-p|
|000031e0| 75 73 68 64 2d 64 75 6e | 69 71 75 65 27 20 63 6f |ushd-dun|ique' co|
|000031f0| 6e 74 72 6f 6c 20 74 68 | 65 20 62 65 68 61 76 69 |ntrol th|e behavi|
|00003200| 6f 72 20 6f 66 20 74 68 | 65 20 72 65 6c 65 76 61 |or of th|e releva|
|00003210| 6e 74 20 63 6f 6d 6d 61 | 6e 64 2e 0a 0a 45 6e 76 |nt comma|nd...Env|
|00003220| 69 72 6f 6e 6d 65 6e 74 | 20 76 61 72 69 61 62 6c |ironment| variabl|
|00003230| 65 73 20 61 72 65 20 65 | 78 70 61 6e 64 65 64 2c |es are e|xpanded,|
|00003240| 20 73 65 65 20 66 75 6e | 63 74 69 6f 6e 20 60 73 | see fun|ction `s|
|00003250| 75 62 73 74 69 74 75 74 | 65 2d 69 6e 2d 66 69 6c |ubstitut|e-in-fil|
|00003260| 65 2d 6e 61 6d 65 27 2e | 1f 0a 28 64 65 66 61 6c |e-name'.|..(defal|
|00003270| 69 61 73 20 27 73 68 65 | 6c 6c 2d 64 69 72 65 63 |ias 'she|ll-direc|
|00003280| 74 6f 72 79 2d 74 72 61 | 63 6b 65 72 20 23 5b 28 |tory-tra|cker #[(|
|00003290| 73 74 72 29 20 22 08 85 | 08 00 c1 c2 c3 8f 87 22 |str) "..|......."|
|000032a0| 20 5b 73 68 65 6c 6c 2d | 64 69 72 74 72 61 63 6b | [shell-|dirtrack|
|000032b0| 70 20 63 68 64 69 72 2d | 66 61 69 6c 75 72 65 20 |p chdir-|failure |
|000032c0| 28 62 79 74 65 2d 63 6f | 64 65 20 22 c0 c1 5c 6e |(byte-co|de "..\n|
|000032d0| 5c 22 88 c3 95 c4 89 89 | 1d 1e 06 1e 07 1e 08 c0 |\"......|........|
|000032e0| 0e 09 5c 6e 0e 08 23 85 | 9b 00 c3 95 16 07 ca 5c |..\n..#.|.......\|
|000032f0| 6e 0e 08 0e 07 4f c3 89 | 23 16 06 ca 5c 6e 0e 08 |n....O..|#...\n..|
|00003300| 0e 07 4f cb 89 23 15 c0 | cc 0e 0d ce 51 0e 06 5c |..O..#..|....Q..\|
|00003310| 22 83 4b 00 cf d0 0d 21 | 21 88 82 8d 00 c0 cc 0e |".K....!|!.......|
|00003320| 11 ce 51 0e 06 5c 22 83 | 60 00 d2 d0 0d 21 21 88 |..Q..\".|`....!!.|
|00003330| 82 8d 00 c0 cc 0e 13 ce | 51 0e 06 5c 22 83 75 00 |........|Q..\".u.|
|00003340| d4 d0 0d 21 21 88 82 8d | 00 0e 15 83 8d 00 c0 cc |...!!...|........|
|00003350| 0e 15 ce 51 0e 06 5c 22 | 83 8d 00 d4 d0 0e 06 21 |...Q..\"|.......!|
|00003360| 21 88 c0 d6 5c 6e 0e 07 | 23 88 c3 95 16 08 82 11 |!...\n..|#.......|
|00003370| 00 2c 87 22 20 5b 73 74 | 72 69 6e 67 2d 6d 61 74 |.,." [st|ring-mat|
|00003380| 63 68 20 22 5e 5b 3b 20 | 09 5d 2a 22 20 73 74 72 |ch "^[; |.]*" str|
|00003390| 20 30 20 6e 69 6c 20 61 | 72 67 31 20 63 6d 64 20 | 0 nil a|rg1 cmd |
|000033a0| 65 6e 64 20 73 74 61 72 | 74 20 73 68 65 6c 6c 2d |end star|t shell-|
|000033b0| 63 6f 6d 6d 61 6e 64 2d | 72 65 67 65 78 70 20 63 |command-|regexp c|
|000033c0| 6f 6d 69 6e 74 2d 61 72 | 67 75 6d 65 6e 74 73 20 |omint-ar|guments |
|000033d0| 31 20 22 5c 5c 60 5c 5c | 28 22 20 73 68 65 6c 6c |1 "\\`\\|(" shell|
|000033e0| 2d 70 6f 70 64 2d 72 65 | 67 65 78 70 20 22 5c 5c |-popd-re|gexp "\\|
|000033f0| 29 5c 5c 28 24 5c 5c 7c | 5b 20 09 5d 5c 5c 29 22 |)\\($\\||[ .]\\)"|
|00003400| 20 73 68 65 6c 6c 2d 70 | 72 6f 63 65 73 73 2d 70 | shell-p|rocess-p|
|00003410| 6f 70 64 20 63 6f 6d 69 | 6e 74 2d 73 75 62 73 74 |opd comi|nt-subst|
|00003420| 69 74 75 74 65 2d 69 6e | 2d 66 69 6c 65 2d 6e 61 |itute-in|-file-na|
|00003430| 6d 65 20 73 68 65 6c 6c | 2d 70 75 73 68 64 2d 72 |me shell|-pushd-r|
|00003440| 65 67 65 78 70 20 73 68 | 65 6c 6c 2d 70 72 6f 63 |egexp sh|ell-proc|
|00003450| 65 73 73 2d 70 75 73 68 | 64 20 73 68 65 6c 6c 2d |ess-push|d shell-|
|00003460| 63 64 2d 72 65 67 65 78 | 70 20 73 68 65 6c 6c 2d |cd-regex|p shell-|
|00003470| 70 72 6f 63 65 73 73 2d | 63 64 20 73 68 65 6c 6c |process-|cd shell|
|00003480| 2d 63 68 64 72 69 76 65 | 2d 72 65 67 65 78 70 20 |-chdrive|-regexp |
|00003490| 22 5b 3b 20 09 5d 2a 22 | 5d 20 34 29 20 28 28 65 |"[; .]*"|] 4) ((e|
|000034a0| 72 72 6f 72 20 22 43 6f | 75 6c 64 6e 27 74 20 63 |rror "Co|uldn't c|
|000034b0| 64 22 29 29 5d 20 33 20 | 28 23 24 20 2e 20 31 32 |d"))] 3 |(#$ . 12|
|000034c0| 32 33 38 29 5d 29 0a 28 | 64 65 66 61 6c 69 61 73 |238)]).(|defalias|
|000034d0| 20 27 73 68 65 6c 6c 2d | 70 72 6f 63 65 73 73 2d | 'shell-|process-|
|000034e0| 70 6f 70 64 20 23 5b 28 | 61 72 67 29 20 22 c0 09 |popd #[(|arg) "..|
|000034f0| 21 86 07 00 c2 89 1b 83 | 23 00 0b c2 55 83 23 00 |!.......|#...U.#.|
|00003500| 5c 66 83 23 00 c5 5c 66 | 40 21 88 5c 66 41 14 c6 |\f.#..\f|@!.\fA..|
|00003510| 20 82 53 00 0b 83 50 00 | 0b c2 56 83 50 00 0b 5c | .S...P.|..V.P..\|
|00003520| 66 47 58 83 50 00 c7 5c | 66 42 1e 08 0b 53 0e 08 |fGX.P..\|fB...S..|
|00003530| 9b 89 1e 09 89 41 41 a1 | 88 0e 08 41 14 c6 20 2a |.....AA.|...A.. *|
|00003540| 82 53 00 ca cb 21 29 87 | 22 20 5b 73 68 65 6c 6c |.S...!).|" [shell|
|00003550| 2d 65 78 74 72 61 63 74 | 2d 6e 75 6d 20 61 72 67 |-extract|-num arg|
|00003560| 20 30 20 6e 75 6d 20 73 | 68 65 6c 6c 2d 64 69 72 | 0 num s|hell-dir|
|00003570| 73 74 61 63 6b 20 73 68 | 65 6c 6c 2d 63 64 20 73 |stack sh|ell-cd s|
|00003580| 68 65 6c 6c 2d 64 69 72 | 73 74 61 63 6b 2d 6d 65 |hell-dir|stack-me|
|00003590| 73 73 61 67 65 20 6e 69 | 6c 20 64 73 20 63 65 6c |ssage ni|l ds cel|
|000035a0| 6c 20 65 72 72 6f 72 20 | 22 43 6f 75 6c 64 6e 27 |l error |"Couldn'|
|000035b0| 74 20 70 6f 70 64 22 5d | 20 33 5d 29 0a 28 64 65 |t popd"]| 3]).(de|
|000035c0| 66 61 6c 69 61 73 20 27 | 73 68 65 6c 6c 2d 70 72 |falias '|shell-pr|
|000035d0| 65 66 69 78 65 64 2d 64 | 69 72 65 63 74 6f 72 79 |efixed-d|irectory|
|000035e0| 2d 6e 61 6d 65 20 23 5b | 28 64 69 72 29 20 22 08 |-name #[|(dir) ".|
|000035f0| 47 c1 55 83 09 00 5c 6e | 87 c3 5c 6e 21 83 13 00 |G.U...\n|..\n!...|
|00003600| 08 5c 6e 50 87 c4 5c 6e | 21 87 22 20 5b 63 6f 6d |.\nP..\n|!." [com|
|00003610| 69 6e 74 2d 66 69 6c 65 | 2d 6e 61 6d 65 2d 70 72 |int-file|-name-pr|
|00003620| 65 66 69 78 20 30 20 64 | 69 72 20 66 69 6c 65 2d |efix 0 d|ir file-|
|00003630| 6e 61 6d 65 2d 61 62 73 | 6f 6c 75 74 65 2d 70 20 |name-abs|olute-p |
|00003640| 65 78 70 61 6e 64 2d 66 | 69 6c 65 2d 6e 61 6d 65 |expand-f|ile-name|
|00003650| 5d 20 32 5d 29 0a 28 64 | 65 66 61 6c 69 61 73 20 |] 2]).(d|efalias |
|00003660| 27 73 68 65 6c 6c 2d 70 | 72 6f 63 65 73 73 2d 63 |'shell-p|rocess-c|
|00003670| 64 20 23 5b 28 61 72 67 | 29 20 22 08 47 c1 55 83 |d #[(arg|) ".G.U.|
|00003680| 0d 00 5c 6e c3 50 82 1a | 00 08 c4 98 83 17 00 0d |..\n.P..|........|
|00003690| 82 1a 00 c6 08 21 1e 07 | 0e 08 15 c9 0e 07 21 88 |.....!..|......!.|
|000036a0| ca 20 29 87 22 20 5b 61 | 72 67 20 30 20 63 6f 6d |. )." [a|rg 0 com|
|000036b0| 69 6e 74 2d 66 69 6c 65 | 2d 6e 61 6d 65 2d 70 72 |int-file|-name-pr|
|000036c0| 65 66 69 78 20 22 7e 22 | 20 22 2d 22 20 73 68 65 |efix "~"| "-" she|
|000036d0| 6c 6c 2d 6c 61 73 74 2d | 64 69 72 20 73 68 65 6c |ll-last-|dir shel|
|000036e0| 6c 2d 70 72 65 66 69 78 | 65 64 2d 64 69 72 65 63 |l-prefix|ed-direc|
|000036f0| 74 6f 72 79 2d 6e 61 6d | 65 20 6e 65 77 2d 64 69 |tory-nam|e new-di|
|00003700| 72 20 64 65 66 61 75 6c | 74 2d 64 69 72 65 63 74 |r defaul|t-direct|
|00003710| 6f 72 79 20 73 68 65 6c | 6c 2d 63 64 20 73 68 65 |ory shel|l-cd she|
|00003720| 6c 6c 2d 64 69 72 73 74 | 61 63 6b 2d 6d 65 73 73 |ll-dirst|ack-mess|
|00003730| 61 67 65 5d 20 32 5d 29 | 0a 28 64 65 66 61 6c 69 |age] 2])|.(defali|
|00003740| 61 73 20 27 73 68 65 6c | 6c 2d 70 72 6f 63 65 73 |as 'shel|l-proces|
|00003750| 73 2d 70 75 73 68 64 20 | 23 5b 28 61 72 67 29 20 |s-pushd |#[(arg) |
|00003760| 22 c0 09 21 1a 09 47 c3 | 55 83 3b 00 5c 66 83 18 |"..!..G.|U.;.\f..|
|00003770| 00 c5 0e 06 c7 50 21 82 | d4 00 0e 08 83 35 00 0e |.....P!.|.....5..|
|00003780| 09 1e 5c 6e cb 0e 08 40 | 21 88 0e 5c 6e 0e 08 41 |..\n...@|!..\n..A|
|00003790| 42 16 08 cc 20 29 82 d4 | 00 cd ce 21 82 d4 00 5c |B... )..|...!...\|
|000037a0| 6e a7 83 b3 00 5c 6e 0e | 08 47 56 83 4e 00 cd cf |n....\n.|.GV.N...|
|000037b0| 21 82 d4 00 5c 6e c3 55 | 83 5c 5c 00 d0 cd d1 21 |!...\n.U|.\\....!|
|000037c0| 21 82 d4 00 0e 12 83 7c | 00 5c 6e 53 0e 08 38 1e |!......||.\nS..8.|
|000037d0| 13 d4 09 21 88 c5 0e 09 | 21 88 cb 0e 13 21 88 cc |...!....|!....!..|
|000037e0| 20 29 82 d4 00 0e 09 0e | 08 42 89 1e 15 47 1e 16 | )......|.B...G..|
|000037f0| 5c 6e 0e 15 9b 1e 17 d8 | 0e 16 5c 6e 5a d8 0e 15 |\n......|..\nZ...|
|00003800| 21 9b 21 1e 19 da 0e 17 | 0e 19 5c 22 1e 1b cb 0e |!.!.....|..\"....|
|00003810| 1b 40 21 88 0e 1b 41 16 | 08 cc 20 2d 82 d4 00 0e |.@!...A.|.. -....|
|00003820| 09 1e 1c cb dd 09 21 21 | 88 0e 1e 83 ca 00 0e 1c |......!!|........|
|00003830| 0e 08 9d 84 d1 00 0e 1c | 0e 08 42 16 08 cc 20 29 |........|..B... )|
|00003840| 29 87 22 20 5b 73 68 65 | 6c 6c 2d 65 78 74 72 61 |)." [she|ll-extra|
|00003850| 63 74 2d 6e 75 6d 20 61 | 72 67 20 6e 75 6d 20 30 |ct-num a|rg num 0|
|00003860| 20 73 68 65 6c 6c 2d 70 | 75 73 68 64 2d 74 6f 68 | shell-p|ushd-toh|
|00003870| 6f 6d 65 20 73 68 65 6c | 6c 2d 70 72 6f 63 65 73 |ome shel|l-proces|
|00003880| 73 2d 70 75 73 68 64 20 | 63 6f 6d 69 6e 74 2d 66 |s-pushd |comint-f|
|00003890| 69 6c 65 2d 6e 61 6d 65 | 2d 70 72 65 66 69 78 20 |ile-name|-prefix |
|000038a0| 22 7e 22 20 73 68 65 6c | 6c 2d 64 69 72 73 74 61 |"~" shel|l-dirsta|
|000038b0| 63 6b 20 64 65 66 61 75 | 6c 74 2d 64 69 72 65 63 |ck defau|lt-direc|
|000038c0| 74 6f 72 79 20 6f 6c 64 | 20 73 68 65 6c 6c 2d 63 |tory old| shell-c|
|000038d0| 64 20 73 68 65 6c 6c 2d | 64 69 72 73 74 61 63 6b |d shell-|dirstack|
|000038e0| 2d 6d 65 73 73 61 67 65 | 20 6d 65 73 73 61 67 65 |-message| message|
|000038f0| 20 22 44 69 72 65 63 74 | 6f 72 79 20 73 74 61 63 | "Direct|ory stac|
|00003900| 6b 20 65 6d 70 74 79 2e | 22 20 22 44 69 72 65 63 |k empty.|" "Direc|
|00003910| 74 6f 72 79 20 73 74 61 | 63 6b 20 6e 6f 74 20 74 |tory sta|ck not t|
|00003920| 68 61 74 20 64 65 65 70 | 2e 22 20 65 72 72 6f 72 |hat deep|." error|
|00003930| 20 22 43 6f 75 6c 64 6e | 27 74 20 63 64 2e 22 20 | "Couldn|'t cd." |
|00003940| 73 68 65 6c 6c 2d 70 75 | 73 68 64 2d 64 65 78 74 |shell-pu|shd-dext|
|00003950| 72 61 63 74 20 64 69 72 | 20 73 68 65 6c 6c 2d 70 |ract dir| shell-p|
|00003960| 72 6f 63 65 73 73 2d 70 | 6f 70 64 20 64 73 20 64 |rocess-p|opd ds d|
|00003970| 73 6c 65 6e 20 66 72 6f | 6e 74 20 72 65 76 65 72 |slen fro|nt rever|
|00003980| 73 65 20 62 61 63 6b 20 | 61 70 70 65 6e 64 20 6e |se back |append n|
|00003990| 65 77 2d 64 73 20 6f 6c | 64 2d 77 64 20 73 68 65 |ew-ds ol|d-wd she|
|000039a0| 6c 6c 2d 70 72 65 66 69 | 78 65 64 2d 64 69 72 65 |ll-prefi|xed-dire|
|000039b0| 63 74 6f 72 79 2d 6e 61 | 6d 65 20 73 68 65 6c 6c |ctory-na|me shell|
|000039c0| 2d 70 75 73 68 64 2d 64 | 75 6e 69 71 75 65 5d 20 |-pushd-d|unique] |
|000039d0| 35 5d 29 0a 28 64 65 66 | 61 6c 69 61 73 20 27 73 |5]).(def|alias 's|
|000039e0| 68 65 6c 6c 2d 65 78 74 | 72 61 63 74 2d 6e 75 6d |hell-ext|ract-num|
|000039f0| 20 23 5b 28 73 74 72 29 | 20 22 c0 c1 5c 6e 5c 22 | #[(str)| "..\n\"|
|00003a00| 85 5c 6e 00 c3 5c 6e 21 | 87 22 20 5b 73 74 72 69 |.\n..\n!|." [stri|
|00003a10| 6e 67 2d 6d 61 74 63 68 | 20 22 5e 5c 5c 2b 5b 31 |ng-match| "^\\+[1|
|00003a20| 2d 39 5d 5b 30 2d 39 5d | 2a 24 22 20 73 74 72 20 |-9][0-9]|*$" str |
|00003a30| 73 74 72 69 6e 67 2d 74 | 6f 2d 69 6e 74 5d 20 33 |string-t|o-int] 3|
|00003a40| 5d 29 0a 23 40 35 35 20 | 54 75 72 6e 20 64 69 72 |]).#@55 |Turn dir|
|00003a50| 65 63 74 6f 72 79 20 74 | 72 61 63 6b 69 6e 67 20 |ectory t|racking |
|00003a60| 6f 6e 20 61 6e 64 20 6f | 66 66 20 69 6e 20 61 20 |on and o|ff in a |
|00003a70| 73 68 65 6c 6c 20 62 75 | 66 66 65 72 2e 1f 0a 28 |shell bu|ffer...(|
|00003a80| 64 65 66 61 6c 69 61 73 | 20 27 73 68 65 6c 6c 2d |defalias| 'shell-|
|00003a90| 64 69 72 74 72 61 63 6b | 2d 74 6f 67 67 6c 65 20 |dirtrack|-toggle |
|00003aa0| 23 5b 6e 69 6c 20 22 08 | 3f 89 10 83 5c 66 00 09 |#[nil ".|?...\f..|
|00003ab0| 12 82 0e 00 c3 12 c4 c5 | 08 83 18 00 c6 82 19 00 |........|........|
|00003ac0| c7 5c 22 87 22 20 5b 73 | 68 65 6c 6c 2d 64 69 72 |.\"." [s|hell-dir|
|00003ad0| 74 72 61 63 6b 70 20 64 | 65 66 61 75 6c 74 2d 64 |trackp d|efault-d|
|00003ae0| 69 72 65 63 74 6f 72 79 | 20 6c 69 73 74 2d 62 75 |irectory| list-bu|
|00003af0| 66 66 65 72 73 2d 64 69 | 72 65 63 74 6f 72 79 20 |ffers-di|rectory |
|00003b00| 6e 69 6c 20 6d 65 73 73 | 61 67 65 20 22 44 69 72 |nil mess|age "Dir|
|00003b10| 65 63 74 6f 72 79 20 74 | 72 61 63 6b 69 6e 67 20 |ectory t|racking |
|00003b20| 25 73 22 20 22 4f 4e 22 | 20 22 4f 46 46 22 5d 20 |%s" "ON"| "OFF"] |
|00003b30| 33 20 28 23 24 20 2e 20 | 31 34 39 32 30 29 20 6e |3 (#$ . |14920) n|
|00003b40| 69 6c 5d 29 0a 28 64 65 | 66 61 6c 69 61 73 20 28 |il]).(de|falias (|
|00003b50| 71 75 6f 74 65 20 64 69 | 72 74 72 61 63 6b 2d 74 |quote di|rtrack-t|
|00003b60| 6f 67 67 6c 65 29 20 28 | 71 75 6f 74 65 20 73 68 |oggle) (|quote sh|
|00003b70| 65 6c 6c 2d 64 69 72 74 | 72 61 63 6b 2d 74 6f 67 |ell-dirt|rack-tog|
|00003b80| 67 6c 65 29 29 0a 23 40 | 35 38 20 44 6f 20 6e 6f |gle)).#@|58 Do no|
|00003b90| 72 6d 61 6c 20 60 63 64 | 27 20 74 6f 20 44 49 52 |rmal `cd|' to DIR|
|00003ba0| 2c 20 61 6e 64 20 73 65 | 74 20 60 6c 69 73 74 2d |, and se|t `list-|
|00003bb0| 62 75 66 66 65 72 73 2d | 64 69 72 65 63 74 6f 72 |buffers-|director|
|00003bc0| 79 27 2e 1f 0a 28 64 65 | 66 61 6c 69 61 73 20 27 |y'...(de|falias '|
|00003bd0| 73 68 65 6c 6c 2d 63 64 | 20 23 5b 28 64 69 72 29 |shell-cd| #[(dir)|
|00003be0| 20 22 08 83 5c 6e 00 c1 | c2 0b 21 21 14 c5 0b 21 | "..\n..|..!!...!|
|00003bf0| 87 22 20 5b 73 68 65 6c | 6c 2d 64 69 72 74 72 61 |." [shel|l-dirtra|
|00003c00| 63 6b 70 20 66 69 6c 65 | 2d 6e 61 6d 65 2d 61 73 |ckp file|-name-as|
|00003c10| 2d 64 69 72 65 63 74 6f | 72 79 20 65 78 70 61 6e |-directo|ry expan|
|00003c20| 64 2d 66 69 6c 65 2d 6e | 61 6d 65 20 64 69 72 20 |d-file-n|ame dir |
|00003c30| 6c 69 73 74 2d 62 75 66 | 66 65 72 73 2d 64 69 72 |list-buf|fers-dir|
|00003c40| 65 63 74 6f 72 79 20 63 | 64 5d 20 33 20 28 23 24 |ectory c|d] 3 (#$|
|00003c50| 20 2e 20 31 35 32 34 33 | 29 5d 29 0a 23 40 34 39 | . 15243|)]).#@49|
|00003c60| 36 20 52 65 73 79 6e 63 | 20 74 68 65 20 62 75 66 |6 Resync| the buf|
|00003c70| 66 65 72 27 73 20 69 64 | 65 61 20 6f 66 20 74 68 |fer's id|ea of th|
|00003c80| 65 20 63 75 72 72 65 6e | 74 20 64 69 72 65 63 74 |e curren|t direct|
|00003c90| 6f 72 79 20 73 74 61 63 | 6b 2e 0a 54 68 69 73 20 |ory stac|k..This |
|00003ca0| 63 6f 6d 6d 61 6e 64 20 | 71 75 65 72 69 65 73 20 |command |queries |
|00003cb0| 74 68 65 20 73 68 65 6c | 6c 20 77 69 74 68 20 74 |the shel|l with t|
|00003cc0| 68 65 20 63 6f 6d 6d 61 | 6e 64 20 62 6f 75 6e 64 |he comma|nd bound|
|00003cd0| 20 74 6f 20 0a 60 73 68 | 65 6c 6c 2d 64 69 72 73 | to .`sh|ell-dirs|
|00003ce0| 74 61 63 6b 2d 71 75 65 | 72 79 27 20 28 64 65 66 |tack-que|ry' (def|
|00003cf0| 61 75 6c 74 20 22 64 69 | 72 73 22 29 2c 20 72 65 |ault "di|rs"), re|
|00003d00| 61 64 73 20 74 68 65 20 | 6e 65 78 74 0a 6c 69 6e |ads the |next.lin|
|00003d10| 65 20 6f 75 74 70 75 74 | 20 61 6e 64 20 70 61 72 |e output| and par|
|00003d20| 73 65 73 20 69 74 20 74 | 6f 20 66 6f 72 6d 20 74 |ses it t|o form t|
|00003d30| 68 65 20 6e 65 77 20 64 | 69 72 65 63 74 6f 72 79 |he new d|irectory|
|00003d40| 20 73 74 61 63 6b 2e 0a | 44 4f 4e 27 54 20 69 73 | stack..|DON'T is|
|00003d50| 73 75 65 20 74 68 69 73 | 20 63 6f 6d 6d 61 6e 64 |sue this| command|
|00003d60| 20 75 6e 6c 65 73 73 20 | 74 68 65 20 62 75 66 66 | unless |the buff|
|00003d70| 65 72 20 69 73 20 61 74 | 20 61 20 73 68 65 6c 6c |er is at| a shell|
|00003d80| 20 70 72 6f 6d 70 74 2e | 0a 41 6c 73 6f 2c 20 6e | prompt.|.Also, n|
|00003d90| 6f 74 65 20 74 68 61 74 | 20 69 66 20 73 6f 6d 65 |ote that| if some|
|00003da0| 20 6f 74 68 65 72 20 73 | 75 62 70 72 6f 63 65 73 | other s|ubproces|
|00003db0| 73 20 64 65 63 69 64 65 | 73 20 74 6f 20 64 6f 20 |s decide|s to do |
|00003dc0| 6f 75 74 70 75 74 0a 69 | 6d 6d 65 64 69 61 74 65 |output.i|mmediate|
|00003dd0| 6c 79 20 61 66 74 65 72 | 20 74 68 65 20 71 75 65 |ly after| the que|
|00003de0| 72 79 2c 20 69 74 73 20 | 6f 75 74 70 75 74 20 77 |ry, its |output w|
|00003df0| 69 6c 6c 20 62 65 20 74 | 61 6b 65 6e 20 61 73 20 |ill be t|aken as |
|00003e00| 74 68 65 0a 6e 65 77 20 | 64 69 72 65 63 74 6f 72 |the.new |director|
|00003e10| 79 20 73 74 61 63 6b 20 | 2d 2d 20 79 6f 75 20 6c |y stack |-- you l|
|00003e20| 6f 73 65 2e 20 49 66 20 | 74 68 69 73 20 68 61 70 |ose. If |this hap|
|00003e30| 70 65 6e 73 2c 20 6a 75 | 73 74 20 64 6f 20 74 68 |pens, ju|st do th|
|00003e40| 65 0a 63 6f 6d 6d 61 6e | 64 20 61 67 61 69 6e 2e |e.comman|d again.|
|00003e50| 1f 0a 28 64 65 66 61 6c | 69 61 73 20 27 73 68 65 |..(defal|ias 'she|
|00003e60| 6c 6c 2d 72 65 73 79 6e | 63 2d 64 69 72 73 20 23 |ll-resyn|c-dirs #|
|00003e70| 5b 6e 69 6c 20 22 c0 70 | 21 19 c2 09 21 89 1b 62 |[nil ".p|!...!..b|
|00003e80| 88 5c 66 63 88 c5 63 88 | c6 c7 21 88 c8 09 5c 66 |.\fc..c.|..!...\f|
|00003e90| 5c 22 88 c8 09 c5 5c 22 | 88 0b 60 c9 93 88 60 1e |\"....\"|..`...`.|
|00003ea0| 5c 6e c5 63 88 cb cc 21 | 88 cd ce 21 84 3f 00 cf |\n.c...!|...!.?..|
|00003eb0| 09 21 88 0e 5c 6e 62 88 | 82 2e 00 29 0b 62 88 d0 |.!..\nb.|...).b..|
|00003ec0| cc 21 88 c7 94 c7 95 53 | 7b 89 1e 11 47 1e 12 c9 |.!.....S|{...G...|
|00003ed0| 1e 13 c7 1e 14 c7 0e 12 | 57 83 7f 00 d5 d6 0e 11 |........|W.......|
|00003ee0| 0e 14 23 88 0e 17 0e 11 | cc 94 cc 95 4f 50 0e 13 |..#.....|....OP..|
|00003ef0| 42 16 13 c7 95 89 16 14 | 82 5a 00 0e 13 9f 1e 13 |B.......|.Z......|
|00003f00| c9 d8 d9 8f 2e 07 87 22 | 20 5b 67 65 74 2d 62 75 |......."| [get-bu|
|00003f10| 66 66 65 72 2d 70 72 6f | 63 65 73 73 20 70 72 6f |ffer-pro|cess pro|
|00003f20| 63 20 70 72 6f 63 65 73 | 73 2d 6d 61 72 6b 20 70 |c proces|s-mark p|
|00003f30| 6d 61 72 6b 20 73 68 65 | 6c 6c 2d 64 69 72 73 74 |mark she|ll-dirst|
|00003f40| 61 63 6b 2d 71 75 65 72 | 79 20 22 5c 6e 22 20 73 |ack-quer|y "\n" s|
|00003f50| 69 74 2d 66 6f 72 20 30 | 20 63 6f 6d 69 6e 74 2d |it-for 0| comint-|
|00003f60| 73 65 6e 64 2d 73 74 72 | 69 6e 67 20 6e 69 6c 20 |send-str|ing nil |
|00003f70| 70 74 20 62 61 63 6b 77 | 61 72 64 2d 63 68 61 72 |pt backw|ard-char|
|00003f80| 20 31 20 6c 6f 6f 6b 69 | 6e 67 2d 61 74 20 22 2e | 1 looki|ng-at ".|
|00003f90| 2b 5c 6e 22 20 61 63 63 | 65 70 74 2d 70 72 6f 63 |+\n" acc|ept-proc|
|00003fa0| 65 73 73 2d 6f 75 74 70 | 75 74 20 64 65 6c 65 74 |ess-outp|ut delet|
|00003fb0| 65 2d 63 68 61 72 20 64 | 6c 20 64 6c 2d 6c 65 6e |e-char d|l dl-len|
|00003fc0| 20 64 73 20 69 20 73 74 | 72 69 6e 67 2d 6d 61 74 | ds i st|ring-mat|
|00003fd0| 63 68 20 22 5c 5c 73 20 | 2a 5c 5c 28 5c 5c 53 20 |ch "\\s |*\\(\\S |
|00003fe0| 2b 5c 5c 29 5c 5c 73 20 | 2a 22 20 63 6f 6d 69 6e |+\\)\\s |*" comin|
|00003ff0| 74 2d 66 69 6c 65 2d 6e | 61 6d 65 2d 70 72 65 66 |t-file-n|ame-pref|
|00004000| 69 78 20 28 62 79 74 65 | 2d 63 6f 64 65 20 22 c0 |ix (byte|-code ".|
|00004010| 09 40 21 88 09 41 89 12 | 40 13 c4 20 87 22 20 5b |.@!..A..|@.. ." [|
|00004020| 73 68 65 6c 6c 2d 63 64 | 20 64 73 20 73 68 65 6c |shell-cd| ds shel|
|00004030| 6c 2d 64 69 72 73 74 61 | 63 6b 20 73 68 65 6c 6c |l-dirsta|ck shell|
|00004040| 2d 6c 61 73 74 2d 64 69 | 72 20 73 68 65 6c 6c 2d |-last-di|r shell-|
|00004050| 64 69 72 73 74 61 63 6b | 2d 6d 65 73 73 61 67 65 |dirstack|-message|
|00004060| 5d 20 33 29 20 28 28 65 | 72 72 6f 72 20 28 6d 65 |] 3) ((e|rror (me|
|00004070| 73 73 61 67 65 20 22 43 | 6f 75 6c 64 6e 27 74 20 |ssage "C|ouldn't |
|00004080| 63 64 2e 22 29 29 29 5d | 20 35 20 28 23 24 20 2e |cd.")))]| 5 (#$ .|
|00004090| 20 31 35 34 35 38 29 20 | 6e 69 6c 5d 29 0a 28 64 | 15458) |nil]).(d|
|000040a0| 65 66 61 6c 69 61 73 20 | 28 71 75 6f 74 65 20 64 |efalias |(quote d|
|000040b0| 69 72 73 29 20 28 71 75 | 6f 74 65 20 73 68 65 6c |irs) (qu|ote shel|
|000040c0| 6c 2d 72 65 73 79 6e 63 | 2d 64 69 72 73 29 29 0a |l-resync|-dirs)).|
|000040d0| 28 64 65 66 61 6c 69 61 | 73 20 27 73 68 65 6c 6c |(defalia|s 'shell|
|000040e0| 2d 64 69 72 73 74 61 63 | 6b 2d 6d 65 73 73 61 67 |-dirstac|k-messag|
|000040f0| 65 20 23 5b 6e 69 6c 20 | 22 c0 19 5c 6e 0b 42 1c |e #[nil |"..\n.B.|
|00004100| c5 0e 06 c7 50 21 89 1e | 08 47 1e 09 5c 66 83 75 |....P!..|.G..\f.u|
|00004110| 00 5c 66 40 89 1e 5c 6e | 47 0e 09 59 83 38 00 0e |.\f@..\n|G..Y.8..|
|00004120| 08 0e 5c 6e cb 0e 09 4f | 98 83 38 00 c7 0e 5c 6e |..\n...O|..8...\n|
|00004130| 0e 09 cc 4f 50 16 5c 6e | 0e 06 83 66 00 0e 5c 6e |...OP.\n|...f..\n|
|00004140| 47 0e 06 47 59 83 66 00 | 0e 06 0e 5c 6e cb 0e 06 |G..GY.f.|...\n...|
|00004150| 47 4f 98 83 66 00 0e 5c | 6e 0e 06 47 cc 4f 89 16 |GO..f..\|n..G.O..|
|00004160| 5c 6e 83 66 00 5c 66 0e | 5c 6e a0 88 09 cd 0e 5c |\n.f.\f.|\n.....\|
|00004170| 6e 21 ce 51 11 5c 66 41 | 14 29 82 12 00 cf d0 09 |n!.Q.\fA|.)......|
|00004180| 5c 22 2c 87 22 20 5b 22 | 22 20 6d 73 67 20 64 65 |\",." ["|" msg de|
|00004190| 66 61 75 6c 74 2d 64 69 | 72 65 63 74 6f 72 79 20 |fault-di|rectory |
|000041a0| 73 68 65 6c 6c 2d 64 69 | 72 73 74 61 63 6b 20 64 |shell-di|rstack d|
|000041b0| 73 20 65 78 70 61 6e 64 | 2d 66 69 6c 65 2d 6e 61 |s expand|-file-na|
|000041c0| 6d 65 20 63 6f 6d 69 6e | 74 2d 66 69 6c 65 2d 6e |me comin|t-file-n|
|000041d0| 61 6d 65 2d 70 72 65 66 | 69 78 20 22 7e 2f 22 20 |ame-pref|ix "~/" |
|000041e0| 68 6f 6d 65 20 68 6f 6d | 65 6c 65 6e 20 64 69 72 |home hom|elen dir|
|000041f0| 20 30 20 6e 69 6c 20 64 | 69 72 65 63 74 6f 72 79 | 0 nil d|irectory|
|00004200| 2d 66 69 6c 65 2d 6e 61 | 6d 65 20 22 20 22 20 6d |-file-na|me " " m|
|00004210| 65 73 73 61 67 65 20 22 | 25 73 22 5d 20 35 5d 29 |essage "|%s"] 5])|
|00004220| 0a 23 40 39 34 20 4d 6f | 76 65 20 66 6f 72 77 61 |.#@94 Mo|ve forwa|
|00004230| 72 64 20 61 63 72 6f 73 | 73 20 41 52 47 20 73 68 |rd acros|s ARG sh|
|00004240| 65 6c 6c 20 63 6f 6d 6d | 61 6e 64 28 73 29 2e 20 |ell comm|and(s). |
|00004250| 20 44 6f 65 73 20 6e 6f | 74 20 63 72 6f 73 73 20 | Does no|t cross |
|00004260| 6c 69 6e 65 73 2e 0a 53 | 65 65 20 60 73 68 65 6c |lines..S|ee `shel|
|00004270| 6c 2d 63 6f 6d 6d 61 6e | 64 2d 72 65 67 65 78 70 |l-comman|d-regexp|
|00004280| 27 2e 1f 0a 28 64 65 66 | 61 6c 69 61 73 20 27 73 |'...(def|alias 's|
|00004290| 68 65 6c 6c 2d 66 6f 72 | 77 61 72 64 2d 63 6f 6d |hell-for|ward-com|
|000042a0| 6d 61 6e 64 20 23 5b 28 | 26 6f 70 74 69 6f 6e 61 |mand #[(|&optiona|
|000042b0| 6c 20 61 72 67 29 20 22 | 8a c0 7f 88 60 29 19 c2 |l arg) "|....`)..|
|000042c0| 0b c4 50 09 c5 0e 06 24 | 85 16 00 c7 c8 21 29 87 |..P....$|.....!).|
|000042d0| 22 20 5b 6e 69 6c 20 6c | 69 6d 69 74 20 72 65 2d |" [nil l|imit re-|
|000042e0| 73 65 61 72 63 68 2d 66 | 6f 72 77 61 72 64 20 73 |search-f|orward s|
|000042f0| 68 65 6c 6c 2d 63 6f 6d | 6d 61 6e 64 2d 72 65 67 |hell-com|mand-reg|
|00004300| 65 78 70 20 22 5c 5c 28 | 5b 3b 26 7c 5d 5b 09 20 |exp "\\(|[;&|][. |
|00004310| 5d 2a 5c 5c 29 2b 22 20 | 6d 6f 76 65 20 61 72 67 |]*\\)+" |move arg|
|00004320| 20 73 6b 69 70 2d 73 79 | 6e 74 61 78 2d 62 61 63 | skip-sy|ntax-bac|
|00004330| 6b 77 61 72 64 20 22 20 | 22 5d 20 35 20 28 23 24 |kward " |"] 5 (#$|
|00004340| 20 2e 20 31 36 39 33 34 | 29 20 22 70 22 5d 29 0a | . 16934|) "p"]).|
|00004350| 23 40 39 35 20 4d 6f 76 | 65 20 62 61 63 6b 77 61 |#@95 Mov|e backwa|
|00004360| 72 64 20 61 63 72 6f 73 | 73 20 41 52 47 20 73 68 |rd acros|s ARG sh|
|00004370| 65 6c 6c 20 63 6f 6d 6d | 61 6e 64 28 73 29 2e 20 |ell comm|and(s). |
|00004380| 20 44 6f 65 73 20 6e 6f | 74 20 63 72 6f 73 73 20 | Does no|t cross |
|00004390| 6c 69 6e 65 73 2e 0a 53 | 65 65 20 60 73 68 65 6c |lines..S|ee `shel|
|000043a0| 6c 2d 63 6f 6d 6d 61 6e | 64 2d 72 65 67 65 78 70 |l-comman|d-regexp|
|000043b0| 27 2e 1f 0a 28 64 65 66 | 61 6c 69 61 73 20 27 73 |'...(def|alias 's|
|000043c0| 68 65 6c 6c 2d 62 61 63 | 6b 77 61 72 64 2d 63 6f |hell-bac|kward-co|
|000043d0| 6d 6d 61 6e 64 20 23 5b | 28 26 6f 70 74 69 6f 6e |mmand #[|(&option|
|000043e0| 61 6c 20 61 72 67 29 20 | 22 8a c0 c1 21 88 60 29 |al arg) |"...!.`)|
|000043f0| 89 1a 60 56 83 15 00 8a | c3 79 88 60 12 29 c4 c5 |..`V....|.y.`.)..|
|00004400| 5c 6e 5c 22 88 c6 c7 c8 | 0e 09 5c 22 5c 6e ca 0e |\n\"....|..\"\n..|
|00004410| 0b 24 85 2f 00 cc 94 62 | 88 cd c1 77 29 87 22 20 |.$./...b|...w)." |
|00004420| 5b 63 6f 6d 69 6e 74 2d | 62 6f 6c 20 6e 69 6c 20 |[comint-|bol nil |
|00004430| 6c 69 6d 69 74 20 30 20 | 73 6b 69 70 2d 73 79 6e |limit 0 |skip-syn|
|00004440| 74 61 78 2d 62 61 63 6b | 77 61 72 64 20 22 20 22 |tax-back|ward " "|
|00004450| 20 72 65 2d 73 65 61 72 | 63 68 2d 62 61 63 6b 77 | re-sear|ch-backw|
|00004460| 61 72 64 20 66 6f 72 6d | 61 74 20 22 5b 3b 26 7c |ard form|at "[;&||
|00004470| 5d 2b 5b 09 20 5d 2a 5c | 5c 28 25 73 5c 5c 29 22 |]+[. ]*\|\(%s\\)"|
|00004480| 20 73 68 65 6c 6c 2d 63 | 6f 6d 6d 61 6e 64 2d 72 | shell-c|ommand-r|
|00004490| 65 67 65 78 70 20 6d 6f | 76 65 20 61 72 67 20 31 |egexp mo|ve arg 1|
|000044a0| 20 22 3b 26 7c 22 5d 20 | 36 20 28 23 24 20 2e 20 | ";&|"] |6 (#$ . |
|000044b0| 31 37 32 33 37 29 20 22 | 70 22 5d 29 0a 23 40 34 |17237) "|p"]).#@4|
|000044c0| 35 38 20 44 79 6e 61 6d | 69 63 61 6c 6c 79 20 63 |58 Dynam|ically c|
|000044d0| 6f 6d 70 6c 65 74 65 20 | 74 68 65 20 63 6f 6d 6d |omplete |the comm|
|000044e0| 61 6e 64 20 61 74 20 70 | 6f 69 6e 74 2e 0a 54 68 |and at p|oint..Th|
|000044f0| 69 73 20 66 75 6e 63 74 | 69 6f 6e 20 69 73 20 73 |is funct|ion is s|
|00004500| 69 6d 69 6c 61 72 20 74 | 6f 20 60 63 6f 6d 69 6e |imilar t|o `comin|
|00004510| 74 2d 64 79 6e 61 6d 69 | 63 2d 63 6f 6d 70 6c 65 |t-dynami|c-comple|
|00004520| 74 65 2d 66 69 6c 65 6e | 61 6d 65 27 2c 20 65 78 |te-filen|ame', ex|
|00004530| 63 65 70 74 20 74 68 61 | 74 20 69 74 0a 73 65 61 |cept tha|t it.sea|
|00004540| 72 63 68 65 73 20 60 65 | 78 65 63 2d 70 61 74 68 |rches `e|xec-path|
|00004550| 27 20 28 6d 69 6e 75 73 | 20 74 68 65 20 74 72 61 |' (minus| the tra|
|00004560| 69 6c 69 6e 67 20 65 6d | 61 63 73 20 6c 69 62 72 |iling em|acs libr|
|00004570| 61 72 79 20 70 61 74 68 | 29 20 66 6f 72 20 63 6f |ary path|) for co|
|00004580| 6d 70 6c 65 74 69 6f 6e | 0a 63 61 6e 64 69 64 61 |mpletion|.candida|
|00004590| 74 65 73 2e 20 20 4e 6f | 74 65 20 74 68 61 74 20 |tes. No|te that |
|000045a0| 74 68 69 73 20 6d 61 79 | 20 6e 6f 74 20 62 65 20 |this may| not be |
|000045b0| 74 68 65 20 73 61 6d 65 | 20 61 73 20 74 68 65 20 |the same| as the |
|000045c0| 73 68 65 6c 6c 27 73 20 | 69 64 65 61 20 6f 66 20 |shell's |idea of |
|000045d0| 74 68 65 0a 70 61 74 68 | 2e 0a 0a 43 6f 6d 70 6c |the.path|...Compl|
|000045e0| 65 74 69 6f 6e 20 69 73 | 20 64 65 70 65 6e 64 65 |etion is| depende|
|000045f0| 6e 74 20 6f 6e 20 74 68 | 65 20 76 61 6c 75 65 20 |nt on th|e value |
|00004600| 6f 66 20 60 73 68 65 6c | 6c 2d 63 6f 6d 70 6c 65 |of `shel|l-comple|
|00004610| 74 69 6f 6e 2d 65 78 65 | 63 6f 6e 6c 79 27 2c 20 |tion-exe|conly', |
|00004620| 70 6c 75 73 0a 74 68 6f | 73 65 20 74 68 61 74 20 |plus.tho|se that |
|00004630| 65 66 66 65 63 74 20 66 | 69 6c 65 20 63 6f 6d 70 |effect f|ile comp|
|00004640| 6c 65 74 69 6f 6e 2e 20 | 20 53 65 65 20 60 73 68 |letion. | See `sh|
|00004650| 65 6c 6c 2d 64 79 6e 61 | 6d 69 63 2d 63 6f 6d 70 |ell-dyna|mic-comp|
|00004660| 6c 65 74 65 2d 61 73 2d | 63 6f 6d 6d 61 6e 64 27 |lete-as-|command'|
|00004670| 2e 0a 0a 52 65 74 75 72 | 6e 73 20 74 20 69 66 20 |...Retur|ns t if |
|00004680| 73 75 63 63 65 73 73 66 | 75 6c 2e 1f 0a 28 64 65 |successf|ul...(de|
|00004690| 66 61 6c 69 61 73 20 27 | 73 68 65 6c 6c 2d 64 79 |falias '|shell-dy|
|000046a0| 6e 61 6d 69 63 2d 63 6f | 6d 70 6c 65 74 65 2d 63 |namic-co|mplete-c|
|000046b0| 6f 6d 6d 61 6e 64 20 23 | 5b 6e 69 6c 20 22 c0 20 |ommand #|[nil ". |
|000046c0| 89 19 85 28 00 c2 20 1b | c4 8e c5 c6 09 5c 22 2a |...(.. .|.....\"*|
|000046d0| 3f 85 28 00 c7 94 8a c8 | c9 21 88 60 29 3d 85 28 |?.(.....|.!.`)=.(|
|000046e0| 00 ca cb 21 88 cc 20 29 | 87 22 20 5b 63 6f 6d 69 |...!.. )|." [comi|
|000046f0| 6e 74 2d 6d 61 74 63 68 | 2d 70 61 72 74 69 61 6c |nt-match|-partial|
|00004700| 2d 66 69 6c 65 6e 61 6d | 65 20 66 69 6c 65 6e 61 |-filenam|e filena|
|00004710| 6d 65 20 6d 61 74 63 68 | 2d 64 61 74 61 20 6d 61 |me match|-data ma|
|00004720| 74 63 68 2d 64 61 74 61 | 20 28 28 73 74 6f 72 65 |tch-data| ((store|
|00004730| 2d 6d 61 74 63 68 2d 64 | 61 74 61 20 6d 61 74 63 |-match-d|ata matc|
|00004740| 68 2d 64 61 74 61 29 29 | 20 73 74 72 69 6e 67 2d |h-data))| string-|
|00004750| 6d 61 74 63 68 20 22 5b | 7e 2f 5d 22 20 30 20 73 |match "[|~/]" 0 s|
|00004760| 68 65 6c 6c 2d 62 61 63 | 6b 77 61 72 64 2d 63 6f |hell-bac|kward-co|
|00004770| 6d 6d 61 6e 64 20 31 20 | 6d 65 73 73 61 67 65 20 |mmand 1 |message |
|00004780| 22 43 6f 6d 70 6c 65 74 | 69 6e 67 20 63 6f 6d 6d |"Complet|ing comm|
|00004790| 61 6e 64 20 6e 61 6d 65 | 2e 2e 2e 22 20 73 68 65 |and name|..." she|
|000047a0| 6c 6c 2d 64 79 6e 61 6d | 69 63 2d 63 6f 6d 70 6c |ll-dynam|ic-compl|
|000047b0| 65 74 65 2d 61 73 2d 63 | 6f 6d 6d 61 6e 64 5d 20 |ete-as-c|ommand] |
|000047c0| 34 20 28 23 24 20 2e 20 | 31 37 36 30 33 29 20 6e |4 (#$ . |17603) n|
|000047d0| 69 6c 5d 29 0a 23 40 31 | 31 30 20 44 79 6e 61 6d |il]).#@1|10 Dynam|
|000047e0| 69 63 61 6c 6c 79 20 63 | 6f 6d 70 6c 65 74 65 20 |ically c|omplete |
|000047f0| 61 74 20 70 6f 69 6e 74 | 20 61 73 20 61 20 63 6f |at point| as a co|
|00004800| 6d 6d 61 6e 64 2e 0a 53 | 65 65 20 60 73 68 65 6c |mmand..S|ee `shel|
|00004810| 6c 2d 64 79 6e 61 6d 69 | 63 2d 63 6f 6d 70 6c 65 |l-dynami|c-comple|
|00004820| 74 65 2d 66 69 6c 65 6e | 61 6d 65 27 2e 20 20 52 |te-filen|ame'. R|
|00004830| 65 74 75 72 6e 73 20 74 | 20 69 66 20 73 75 63 63 |eturns t| if succ|
|00004840| 65 73 73 66 75 6c 2e 1f | 0a 28 64 65 66 61 6c 69 |essful..|.(defali|
|00004850| 61 73 20 27 73 68 65 6c | 6c 2d 64 79 6e 61 6d 69 |as 'shel|l-dynami|
|00004860| 63 2d 63 6f 6d 70 6c 65 | 74 65 2d 61 73 2d 63 6f |c-comple|te-as-co|
|00004870| 6d 6d 61 6e 64 20 23 5b | 6e 69 6c 20 22 c0 20 86 |mmand #[|nil ". .|
|00004880| 06 00 c1 1a c3 5c 6e 21 | 1c c5 0e 06 21 41 1e 07 |.....\n!|....!A..|
|00004890| c8 c9 0e 5c 6e 21 21 1e | 0b 0e 5c 66 85 25 00 cd |...\n!!.|..\f.%..|
|000048a0| ce 0e 5c 66 cf 23 1e 10 | c1 1e 11 d2 1e 13 c1 1e |..\f.#..|........|
|000048b0| 14 c1 1e 15 d2 1e 16 0e | 07 83 b0 00 c8 d7 0e 07 |........|........|
|000048c0| 40 86 44 00 d8 21 21 16 | 11 d9 0e 11 21 85 54 00 |@.D..!!.|....!.T.|
|000048d0| da 5c 66 0e 11 5c 22 89 | 16 13 83 a7 00 0e 13 40 |.\f..\".|.......@|
|000048e0| 16 14 0e 11 0e 14 50 16 | 15 0e 14 0e 16 9d 84 9e |......P.|........|
|000048f0| 00 0e 10 83 7c 00 db 0e | 10 0e 14 5c 22 84 9e 00 |....|...|...\"...|
|00004900| 0e 11 0e 0b 98 84 8b 00 | dc 0e 15 21 84 9e 00 0e |........|...!....|
|00004910| 1d 83 97 00 de 0e 15 21 | 83 9e 00 0e 14 0e 16 42 |.......!|.......B|
|00004920| 16 16 0e 13 41 89 16 13 | 84 5a 00 0e 07 41 89 16 |....A...|.Z...A..|
|00004930| 07 84 3b 00 d2 1e 1f e0 | 5c 66 0e 16 5c 22 29 89 |..;.....|\f..\").|
|00004940| 1e 21 e2 3e 83 d0 00 0e | 1f 83 d0 00 dc c0 20 21 |.!.>....|...... !|
|00004950| 84 d0 00 e3 63 88 0e 21 | 2e 0b 87 22 20 5b 63 6f |....c..!|..." [co|
|00004960| 6d 69 6e 74 2d 6d 61 74 | 63 68 2d 70 61 72 74 69 |mint-mat|ch-parti|
|00004970| 61 6c 2d 66 69 6c 65 6e | 61 6d 65 20 22 22 20 66 |al-filen|ame "" f|
|00004980| 69 6c 65 6e 61 6d 65 20 | 66 69 6c 65 2d 6e 61 6d |ilename |file-nam|
|00004990| 65 2d 6e 6f 6e 64 69 72 | 65 63 74 6f 72 79 20 70 |e-nondir|ectory p|
|000049a0| 61 74 68 6e 6f 6e 64 69 | 72 20 72 65 76 65 72 73 |athnondi|r revers|
|000049b0| 65 20 65 78 65 63 2d 70 | 61 74 68 20 70 61 74 68 |e exec-p|ath path|
|000049c0| 73 20 66 69 6c 65 2d 6e | 61 6d 65 2d 61 73 2d 64 |s file-n|ame-as-d|
|000049d0| 69 72 65 63 74 6f 72 79 | 20 65 78 70 61 6e 64 2d |irectory| expand-|
|000049e0| 66 69 6c 65 2d 6e 61 6d | 65 20 64 65 66 61 75 6c |file-nam|e defaul|
|000049f0| 74 2d 64 69 72 65 63 74 | 6f 72 79 20 63 77 64 20 |t-direct|ory cwd |
|00004a00| 63 6f 6d 69 6e 74 2d 63 | 6f 6d 70 6c 65 74 69 6f |comint-c|ompletio|
|00004a10| 6e 2d 66 69 67 6e 6f 72 | 65 20 6d 61 70 63 6f 6e |n-fignor|e mapcon|
|00004a20| 63 61 74 20 23 5b 28 78 | 29 20 22 c0 09 21 c2 50 |cat #[(x|) "..!.P|
|00004a30| 87 22 20 5b 72 65 67 65 | 78 70 2d 71 75 6f 74 65 |." [rege|xp-quote|
|00004a40| 20 78 20 22 24 22 5d 20 | 32 5d 20 22 5c 5c 7c 22 | x "$"] |2] "\\|"|
|00004a50| 20 69 67 6e 6f 72 65 64 | 2d 65 78 74 65 6e 73 69 | ignored|-extensi|
|00004a60| 6f 6e 73 20 70 61 74 68 | 20 6e 69 6c 20 63 6f 6d |ons path| nil com|
|00004a70| 70 73 2d 69 6e 2d 70 61 | 74 68 20 66 69 6c 65 20 |ps-in-pa|th file |
|00004a80| 66 69 6c 65 70 61 74 68 | 20 63 6f 6d 70 6c 65 74 |filepath| complet|
|00004a90| 69 6f 6e 73 20 63 6f 6d | 69 6e 74 2d 64 69 72 65 |ions com|int-dire|
|00004aa0| 63 74 6f 72 79 20 22 2e | 22 20 66 69 6c 65 2d 61 |ctory ".|" file-a|
|00004ab0| 63 63 65 73 73 69 62 6c | 65 2d 64 69 72 65 63 74 |ccessibl|e-direct|
|00004ac0| 6f 72 79 2d 70 20 66 69 | 6c 65 2d 6e 61 6d 65 2d |ory-p fi|le-name-|
|00004ad0| 61 6c 6c 2d 63 6f 6d 70 | 6c 65 74 69 6f 6e 73 20 |all-comp|letions |
|00004ae0| 73 74 72 69 6e 67 2d 6d | 61 74 63 68 20 66 69 6c |string-m|atch fil|
|00004af0| 65 2d 64 69 72 65 63 74 | 6f 72 79 2d 70 20 73 68 |e-direct|ory-p sh|
|00004b00| 65 6c 6c 2d 63 6f 6d 70 | 6c 65 74 69 6f 6e 2d 65 |ell-comp|letion-e|
|00004b10| 78 65 63 6f 6e 6c 79 20 | 66 69 6c 65 2d 65 78 65 |xeconly |file-exe|
|00004b20| 63 75 74 61 62 6c 65 2d | 70 20 63 6f 6d 69 6e 74 |cutable-|p comint|
|00004b30| 2d 63 6f 6d 70 6c 65 74 | 69 6f 6e 2d 61 64 64 73 |-complet|ion-adds|
|00004b40| 75 66 66 69 78 20 63 6f | 6d 69 6e 74 2d 64 79 6e |uffix co|mint-dyn|
|00004b50| 61 6d 69 63 2d 73 69 6d | 70 6c 65 2d 63 6f 6d 70 |amic-sim|ple-comp|
|00004b60| 6c 65 74 65 20 73 75 63 | 63 65 73 73 20 28 73 6f |lete suc|cess (so|
|00004b70| 6c 65 20 73 68 6f 72 74 | 65 73 74 29 20 22 20 22 |le short|est) " "|
|00004b80| 5d 20 35 20 28 23 24 20 | 2e 20 31 38 33 39 35 29 |] 5 (#$ |. 18395)|
|00004b90| 5d 29 0a 23 40 36 32 20 | 52 65 74 75 72 6e 20 74 |]).#@62 |Return t|
|00004ba0| 68 65 20 73 68 65 6c 6c | 20 76 61 72 69 61 62 6c |he shell| variabl|
|00004bb0| 65 20 61 74 20 70 6f 69 | 6e 74 2c 20 6f 72 20 6e |e at poi|nt, or n|
|00004bc0| 69 6c 20 69 66 20 6e 6f | 6e 65 20 69 73 20 66 6f |il if no|ne is fo|
|00004bd0| 75 6e 64 2e 1f 0a 28 64 | 65 66 61 6c 69 61 73 20 |und...(d|efalias |
|00004be0| 27 73 68 65 6c 6c 2d 6d | 61 74 63 68 2d 70 61 72 |'shell-m|atch-par|
|00004bf0| 74 69 61 6c 2d 76 61 72 | 69 61 62 6c 65 20 23 5b |tial-var|iable #[|
|00004c00| 6e 69 6c 20 22 8a 60 18 | c1 c2 c3 c4 23 83 14 00 |nil ".`.|....#...|
|00004c10| c5 c6 21 84 14 00 c7 75 | 88 6c 86 1b 00 c5 c8 21 |..!....u|.l.....!|
|00004c20| 3f 85 29 00 c9 ca 08 5c | 22 88 cb 94 cb 95 7b 2a |?.)....\|".....{*|
|00004c30| 87 22 20 5b 6c 69 6d 69 | 74 20 72 65 2d 73 65 61 |." [limi|t re-sea|
|00004c40| 72 63 68 2d 62 61 63 6b | 77 61 72 64 20 22 5b 5e |rch-back|ward "[^|
|00004c50| 41 2d 5a 61 2d 7a 30 2d | 39 5f 7b 7d 5d 22 20 6e |A-Za-z0-|9_{}]" n|
|00004c60| 69 6c 20 6d 6f 76 65 20 | 6c 6f 6f 6b 69 6e 67 2d |il move |looking-|
|00004c70| 61 74 20 22 5c 5c 24 22 | 20 31 20 22 5b 5e 41 2d |at "\\$"| 1 "[^A-|
|00004c80| 5a 61 2d 7a 30 2d 39 5f | 7b 7d 24 5d 22 20 72 65 |Za-z0-9_|{}$]" re|
|00004c90| 2d 73 65 61 72 63 68 2d | 66 6f 72 77 61 72 64 20 |-search-|forward |
|00004ca0| 22 5c 5c 24 3f 7b 3f 5b | 41 2d 5a 61 2d 7a 30 2d |"\\$?{?[|A-Za-z0-|
|00004cb0| 39 5f 5d 2a 7d 3f 22 20 | 30 5d 20 34 20 28 23 24 |9_]*}?" |0] 4 (#$|
|00004cc0| 20 2e 20 31 39 33 35 32 | 29 5d 29 0a 23 40 37 33 | . 19352|)]).#@73|
|00004cd0| 38 20 44 79 6e 61 6d 69 | 63 61 6c 6c 79 20 63 6f |8 Dynami|cally co|
|00004ce0| 6d 70 6c 65 74 65 20 74 | 68 65 20 65 6e 76 69 72 |mplete t|he envir|
|00004cf0| 6f 6e 6d 65 6e 74 20 76 | 61 72 69 61 62 6c 65 20 |onment v|ariable |
|00004d00| 61 74 20 70 6f 69 6e 74 | 2e 0a 43 6f 6d 70 6c 65 |at point|..Comple|
|00004d10| 74 65 73 20 69 66 20 61 | 66 74 65 72 20 61 20 76 |tes if a|fter a v|
|00004d20| 61 72 69 61 62 6c 65 2c | 20 69 2e 65 2e 2c 20 69 |ariable,| i.e., i|
|00004d30| 66 20 69 74 20 73 74 61 | 72 74 73 20 77 69 74 68 |f it sta|rts with|
|00004d40| 20 61 20 22 24 22 2e 0a | 53 65 65 20 60 73 68 65 | a "$"..|See `she|
|00004d50| 6c 6c 2d 64 79 6e 61 6d | 69 63 2d 63 6f 6d 70 6c |ll-dynam|ic-compl|
|00004d60| 65 74 65 2d 61 73 2d 65 | 6e 76 69 72 6f 6e 6d 65 |ete-as-e|nvironme|
|00004d70| 6e 74 2d 76 61 72 69 61 | 62 6c 65 27 2e 0a 0a 54 |nt-varia|ble'...T|
|00004d80| 68 69 73 20 66 75 6e 63 | 74 69 6f 6e 20 69 73 20 |his func|tion is |
|00004d90| 73 69 6d 69 6c 61 72 20 | 74 6f 20 60 63 6f 6d 69 |similar |to `comi|
|00004da0| 6e 74 2d 64 79 6e 61 6d | 69 63 2d 63 6f 6d 70 6c |nt-dynam|ic-compl|
|00004db0| 65 74 65 2d 66 69 6c 65 | 6e 61 6d 65 27 2c 20 65 |ete-file|name', e|
|00004dc0| 78 63 65 70 74 20 74 68 | 61 74 20 69 74 0a 73 65 |xcept th|at it.se|
|00004dd0| 61 72 63 68 65 73 20 60 | 70 72 6f 63 65 73 73 2d |arches `|process-|
|00004de0| 65 6e 76 69 72 6f 6e 6d | 65 6e 74 27 20 66 6f 72 |environm|ent' for|
|00004df0| 20 63 6f 6d 70 6c 65 74 | 69 6f 6e 20 63 61 6e 64 | complet|ion cand|
|00004e00| 69 64 61 74 65 73 2e 20 | 20 4e 6f 74 65 20 74 68 |idates. | Note th|
|00004e10| 61 74 20 74 68 69 73 20 | 6d 61 79 0a 6e 6f 74 20 |at this |may.not |
|00004e20| 62 65 20 74 68 65 20 73 | 61 6d 65 20 61 73 20 74 |be the s|ame as t|
|00004e30| 68 65 20 69 6e 74 65 72 | 70 72 65 74 65 72 27 73 |he inter|preter's|
|00004e40| 20 69 64 65 61 20 6f 66 | 20 76 61 72 69 61 62 6c | idea of| variabl|
|00004e50| 65 20 6e 61 6d 65 73 2e | 20 20 54 68 65 20 6d 61 |e names.| The ma|
|00004e60| 69 6e 20 70 72 6f 62 6c | 65 6d 0a 77 69 74 68 20 |in probl|em.with |
|00004e70| 74 68 69 73 20 74 79 70 | 65 20 6f 66 20 63 6f 6d |this typ|e of com|
|00004e80| 70 6c 65 74 69 6f 6e 20 | 69 73 20 74 68 61 74 20 |pletion |is that |
|00004e90| 60 70 72 6f 63 65 73 73 | 2d 65 6e 76 69 72 6f 6e |`process|-environ|
|00004ea0| 6d 65 6e 74 27 20 69 73 | 20 74 68 65 20 65 6e 76 |ment' is| the env|
|00004eb0| 69 72 6f 6e 6d 65 6e 74 | 0a 77 68 69 63 68 20 45 |ironment|.which E|
|00004ec0| 6d 61 63 73 20 73 74 61 | 72 74 65 64 20 77 69 74 |macs sta|rted wit|
|00004ed0| 68 2e 20 20 45 6d 61 63 | 73 20 64 6f 65 73 20 6e |h. Emac|s does n|
|00004ee0| 6f 74 20 74 72 61 63 6b | 20 63 68 61 6e 67 65 73 |ot track| changes|
|00004ef0| 20 74 6f 20 74 68 65 20 | 65 6e 76 69 72 6f 6e 6d | to the |environm|
|00004f00| 65 6e 74 20 6d 61 64 65 | 0a 62 79 20 74 68 65 20 |ent made|.by the |
|00004f10| 69 6e 74 65 72 70 72 65 | 74 65 72 2e 20 20 50 65 |interpre|ter. Pe|
|00004f20| 72 68 61 70 73 20 69 74 | 20 77 6f 75 6c 64 20 62 |rhaps it| would b|
|00004f30| 65 20 6d 6f 72 65 20 61 | 63 63 75 72 61 74 65 20 |e more a|ccurate |
|00004f40| 69 66 20 74 68 69 73 20 | 66 75 6e 63 74 69 6f 6e |if this |function|
|00004f50| 20 77 61 73 0a 63 61 6c | 6c 65 64 20 60 73 68 65 | was.cal|led `she|
|00004f60| 6c 6c 2d 64 79 6e 61 6d | 69 63 2d 63 6f 6d 70 6c |ll-dynam|ic-compl|
|00004f70| 65 74 65 2d 70 72 6f 63 | 65 73 73 2d 65 6e 76 69 |ete-proc|ess-envi|
|00004f80| 72 6f 6e 6d 65 6e 74 2d | 76 61 72 69 61 62 6c 65 |ronment-|variable|
|00004f90| 27 2e 0a 0a 52 65 74 75 | 72 6e 73 20 6e 6f 6e 2d |'...Retu|rns non-|
|00004fa0| 6e 69 6c 20 69 66 20 73 | 75 63 63 65 73 73 66 75 |nil if s|uccessfu|
|00004fb0| 6c 2e 1f 0a 28 64 65 66 | 61 6c 69 61 73 20 27 73 |l...(def|alias 's|
|00004fc0| 68 65 6c 6c 2d 64 79 6e | 61 6d 69 63 2d 63 6f 6d |hell-dyn|amic-com|
|00004fd0| 70 6c 65 74 65 2d 65 6e | 76 69 72 6f 6e 6d 65 6e |plete-en|vironmen|
|00004fe0| 74 2d 76 61 72 69 61 62 | 6c 65 20 23 5b 6e 69 6c |t-variab|le #[nil|
|00004ff0| 20 22 c0 20 89 19 85 14 | 00 c2 c3 09 5c 22 85 14 | ". ....|....\"..|
|00005000| 00 c4 c5 21 88 c6 20 29 | 87 22 20 5b 73 68 65 6c |...!.. )|." [shel|
|00005010| 6c 2d 6d 61 74 63 68 2d | 70 61 72 74 69 61 6c 2d |l-match-|partial-|
|00005020| 76 61 72 69 61 62 6c 65 | 20 76 61 72 69 61 62 6c |variable| variabl|
|00005030| 65 20 73 74 72 69 6e 67 | 2d 6d 61 74 63 68 20 22 |e string|-match "|
|00005040| 5e 5c 5c 24 22 20 6d 65 | 73 73 61 67 65 20 22 43 |^\\$" me|ssage "C|
|00005050| 6f 6d 70 6c 65 74 69 6e | 67 20 76 61 72 69 61 62 |ompletin|g variab|
|00005060| 6c 65 20 6e 61 6d 65 2e | 2e 2e 22 20 73 68 65 6c |le name.|.." shel|
|00005070| 6c 2d 64 79 6e 61 6d 69 | 63 2d 63 6f 6d 70 6c 65 |l-dynami|c-comple|
|00005080| 74 65 2d 61 73 2d 65 6e | 76 69 72 6f 6e 6d 65 6e |te-as-en|vironmen|
|00005090| 74 2d 76 61 72 69 61 62 | 6c 65 5d 20 34 20 28 23 |t-variab|le] 4 (#|
|000050a0| 24 20 2e 20 31 39 36 36 | 36 29 20 6e 69 6c 5d 29 |$ . 1966|6) nil])|
|000050b0| 0a 23 40 31 35 33 20 44 | 79 6e 61 6d 69 63 61 6c |.#@153 D|ynamical|
|000050c0| 6c 79 20 63 6f 6d 70 6c | 65 74 65 20 61 74 20 70 |ly compl|ete at p|
|000050d0| 6f 69 6e 74 20 61 73 20 | 61 6e 20 65 6e 76 69 72 |oint as |an envir|
|000050e0| 6f 6e 6d 65 6e 74 20 76 | 61 72 69 61 62 6c 65 2e |onment v|ariable.|
|000050f0| 0a 55 73 65 64 20 62 79 | 20 60 73 68 65 6c 6c 2d |.Used by| `shell-|
|00005100| 64 79 6e 61 6d 69 63 2d | 63 6f 6d 70 6c 65 74 65 |dynamic-|complete|
|00005110| 2d 65 6e 76 69 72 6f 6e | 6d 65 6e 74 2d 76 61 72 |-environ|ment-var|
|00005120| 69 61 62 6c 65 27 2e 0a | 55 73 65 73 20 60 63 6f |iable'..|Uses `co|
|00005130| 6d 69 6e 74 2d 64 79 6e | 61 6d 69 63 2d 73 69 6d |mint-dyn|amic-sim|
|00005140| 70 6c 65 2d 63 6f 6d 70 | 6c 65 74 65 27 2e 1f 0a |ple-comp|lete'...|
|00005150| 28 64 65 66 61 6c 69 61 | 73 20 27 73 68 65 6c 6c |(defalia|s 'shell|
|00005160| 2d 64 79 6e 61 6d 69 63 | 2d 63 6f 6d 70 6c 65 74 |-dynamic|-complet|
|00005170| 65 2d 61 73 2d 65 6e 76 | 69 72 6f 6e 6d 65 6e 74 |e-as-env|ironment|
|00005180| 2d 76 61 72 69 61 62 6c | 65 20 23 5b 6e 69 6c 20 |-variabl|e #[nil |
|00005190| 22 c0 20 86 06 00 c1 89 | 1a c3 c4 5c 6e 5c 22 86 |". .....|...\n\".|
|000051a0| 10 00 c5 c6 4f 1e 07 c8 | c9 0e 5c 6e 5c 22 1e 0b |....O...|..\n\"..|
|000051b0| 0e 5c 66 1e 0d c6 1e 5c | 66 ce 0e 07 0e 0b 5c 22 |.\f....\|f.....\"|
|000051c0| 89 1e 0f d0 3e 83 78 00 | c0 20 89 1a c3 d1 5c 6e |....>.x.|. ....\n|
|000051d0| 5c 22 c6 4f 1e 07 c3 d2 | 5c 6e 5c 22 83 47 00 d3 |\".O....|\n\".G..|
|000051e0| 82 53 00 c3 d4 5c 6e 5c | 22 83 52 00 d5 82 53 00 |.S...\n\|".R...S.|
|000051f0| c1 1e 16 0e 0d 84 5e 00 | c1 82 6e 00 d7 d8 d9 0e |......^.|..n.....|
|00005200| 07 21 21 21 83 6d 00 da | 82 6e 00 db 1e 1c 0e 16 |.!!!.m..|.n......|
|00005210| 0e 1c b1 02 88 2c 0e 0f | 2e 06 87 22 20 5b 73 68 |.....,..|..." [sh|
|00005220| 65 6c 6c 2d 6d 61 74 63 | 68 2d 70 61 72 74 69 61 |ell-matc|h-partia|
|00005230| 6c 2d 76 61 72 69 61 62 | 6c 65 20 22 22 20 76 61 |l-variab|le "" va|
|00005240| 72 20 73 74 72 69 6e 67 | 2d 6d 61 74 63 68 20 22 |r string|-match "|
|00005250| 5b 5e 24 28 7b 5d 5c 5c | 7c 24 22 20 30 20 6e 69 |[^$({]\\||$" 0 ni|
|00005260| 6c 20 76 61 72 69 61 62 | 6c 65 20 6d 61 70 63 61 |l variab|le mapca|
|00005270| 72 20 23 5b 28 78 29 20 | 22 08 c1 c2 c3 08 5c 22 |r #[(x) |".....\"|
|00005280| 4f 87 22 20 5b 78 20 30 | 20 73 74 72 69 6e 67 2d |O." [x 0| string-|
|00005290| 6d 61 74 63 68 20 22 3d | 22 5d 20 35 5d 20 70 72 |match "=|"] 5] pr|
|000052a0| 6f 63 65 73 73 2d 65 6e | 76 69 72 6f 6e 6d 65 6e |ocess-en|vironmen|
|000052b0| 74 20 76 61 72 69 61 62 | 6c 65 73 20 63 6f 6d 69 |t variab|les comi|
|000052c0| 6e 74 2d 63 6f 6d 70 6c | 65 74 69 6f 6e 2d 61 64 |nt-compl|etion-ad|
|000052d0| 64 73 75 66 66 69 78 20 | 61 64 64 73 75 66 66 69 |dsuffix |addsuffi|
|000052e0| 78 20 63 6f 6d 69 6e 74 | 2d 64 79 6e 61 6d 69 63 |x comint|-dynamic|
|000052f0| 2d 73 69 6d 70 6c 65 2d | 63 6f 6d 70 6c 65 74 65 |-simple-|complete|
|00005300| 20 73 75 63 63 65 73 73 | 20 28 73 6f 6c 65 20 73 | success| (sole s|
|00005310| 68 6f 72 74 65 73 74 29 | 20 22 5b 5e 24 28 7b 5d |hortest)| "[^$({]|
|00005320| 22 20 22 7b 22 20 22 7d | 22 20 22 28 22 20 22 29 |" "{" "}|" "(" ")|
|00005330| 22 20 70 72 6f 74 65 63 | 74 69 6f 6e 20 66 69 6c |" protec|tion fil|
|00005340| 65 2d 64 69 72 65 63 74 | 6f 72 79 2d 70 20 63 6f |e-direct|ory-p co|
|00005350| 6d 69 6e 74 2d 64 69 72 | 65 63 74 6f 72 79 20 67 |mint-dir|ectory g|
|00005360| 65 74 65 6e 76 20 22 2f | 22 20 22 20 22 20 73 75 |etenv "/|" " " su|
|00005370| 66 66 69 78 5d 20 35 20 | 28 23 24 20 2e 20 32 30 |ffix] 5 |(#$ . 20|
|00005380| 36 36 33 29 5d 29 0a 23 | 40 31 38 31 20 45 78 70 |663)]).#|@181 Exp|
|00005390| 61 6e 64 20 64 69 72 65 | 63 74 6f 72 79 20 73 74 |and dire|ctory st|
|000053a0| 61 63 6b 20 72 65 66 65 | 72 65 6e 63 65 20 62 65 |ack refe|rence be|
|000053b0| 66 6f 72 65 20 70 6f 69 | 6e 74 2e 0a 44 69 72 65 |fore poi|nt..Dire|
|000053c0| 63 74 6f 72 79 20 73 74 | 61 63 6b 20 72 65 66 65 |ctory st|ack refe|
|000053d0| 72 65 6e 63 65 73 20 61 | 72 65 20 6f 66 20 74 68 |rences a|re of th|
|000053e0| 65 20 66 6f 72 6d 20 22 | 3d 64 69 67 69 74 22 20 |e form "|=digit" |
|000053f0| 6f 72 20 22 3d 2d 22 2e | 0a 53 65 65 20 60 64 65 |or "=-".|.See `de|
|00005400| 66 61 75 6c 74 2d 64 69 | 72 65 63 74 6f 72 79 27 |fault-di|rectory'|
|00005410| 20 61 6e 64 20 60 73 68 | 65 6c 6c 2d 64 69 72 73 | and `sh|ell-dirs|
|00005420| 74 61 63 6b 27 2e 0a 0a | 52 65 74 75 72 6e 73 20 |tack'...|Returns |
|00005430| 74 20 69 66 20 73 75 63 | 63 65 73 73 66 75 6c 2e |t if suc|cessful.|
|00005440| 1f 0a 28 64 65 66 61 6c | 69 61 73 20 27 73 68 65 |..(defal|ias 'she|
|00005450| 6c 6c 2d 72 65 70 6c 61 | 63 65 2d 62 79 2d 65 78 |ll-repla|ce-by-ex|
|00005460| 70 61 6e 64 65 64 2d 64 | 69 72 65 63 74 6f 72 79 |panded-d|irectory|
|00005470| 20 23 5b 6e 69 6c 20 22 | c0 20 85 55 00 8a c1 94 | #[nil "|. .U....|
|00005480| 62 88 5c 6e 0b 42 c4 c5 | 21 83 18 00 0b 47 82 25 |b.\n.B..|!....G.%|
|00005490| 00 c4 c6 21 85 25 00 c7 | c8 94 c8 95 7b 21 1e 09 |...!.%..|....{!..|
|000054a0| 1e 5c 6e 0e 09 84 32 00 | cb 82 54 00 0e 09 0e 5c |.\n...2.|..T....\|
|000054b0| 6e 47 59 83 41 00 cc cd | 21 82 54 00 ce cf 0e 09 |nGY.A...|!.T.....|
|000054c0| 0e 5c 6e 38 21 d0 89 23 | 88 d1 d2 0e 09 5c 22 88 |.\n8!..#|.....\".|
|000054d0| d0 2b 87 22 20 5b 63 6f | 6d 69 6e 74 2d 6d 61 74 |.+." [co|mint-mat|
|000054e0| 63 68 2d 70 61 72 74 69 | 61 6c 2d 66 69 6c 65 6e |ch-parti|al-filen|
|000054f0| 61 6d 65 20 30 20 64 65 | 66 61 75 6c 74 2d 64 69 |ame 0 de|fault-di|
|00005500| 72 65 63 74 6f 72 79 20 | 73 68 65 6c 6c 2d 64 69 |rectory |shell-di|
|00005510| 72 73 74 61 63 6b 20 6c | 6f 6f 6b 69 6e 67 2d 61 |rstack l|ooking-a|
|00005520| 74 20 22 3d 2d 2f 3f 22 | 20 22 3d 5c 5c 28 5b 30 |t "=-/?"| "=\\([0|
|00005530| 2d 39 5d 2b 5c 5c 29 22 | 20 73 74 72 69 6e 67 2d |-9]+\\)"| string-|
|00005540| 74 6f 2d 6e 75 6d 62 65 | 72 20 31 20 69 6e 64 65 |to-numbe|r 1 inde|
|00005550| 78 20 73 74 61 63 6b 20 | 6e 69 6c 20 65 72 72 6f |x stack |nil erro|
|00005560| 72 20 22 44 69 72 65 63 | 74 6f 72 79 20 73 74 61 |r "Direc|tory sta|
|00005570| 63 6b 20 6e 6f 74 20 74 | 68 61 74 20 64 65 65 70 |ck not t|hat deep|
|00005580| 2e 22 20 72 65 70 6c 61 | 63 65 2d 6d 61 74 63 68 |." repla|ce-match|
|00005590| 20 66 69 6c 65 2d 6e 61 | 6d 65 2d 61 73 2d 64 69 | file-na|me-as-di|
|000055a0| 72 65 63 74 6f 72 79 20 | 74 20 6d 65 73 73 61 67 |rectory |t messag|
|000055b0| 65 20 22 44 69 72 65 63 | 74 6f 72 79 20 69 74 65 |e "Direc|tory ite|
|000055c0| 6d 3a 20 25 64 22 5d 20 | 34 20 28 23 24 20 2e 20 |m: %d"] |4 (#$ . |
|000055d0| 32 31 33 38 39 29 20 6e | 69 6c 5d 29 0a 28 70 72 |21389) n|il]).(pr|
|000055e0| 6f 76 69 64 65 20 28 71 | 75 6f 74 65 20 73 68 65 |ovide (q|uote she|
|000055f0| 6c 6c 29 29 0a | |ll)). | |
+--------+-------------------------+-------------------------+--------+--------+